최대 1 분 소요

Algorithm🤮

프로그래머스 기초단계를 푸며 알게된 유용한 메서드팁을 알아보자

배열.filter( a => 배열2.includes(a) )

같은 value값을 배열로 리턴.



let a = ‘the for pak’ a.split(‘for’) // [‘the’, ‘pak’]

split(문자) 해당 문자는 없어지고 그 문자를 기준으로 나눠진 배열이 생성



array.join()

각 배열의 인덱스를 ()안의 값으로 이어줌



const arrNum = [11, 2, 33, 4];

arrNum.sort((a,b) => a-b); // [2, 4, 11, 33] (오름차순)

arrNum.sort((a,b) => b-a); // [33, 11, 4, 2] (내림차순)



arr.sort((a,b)=> a.length - b.length)[arr.length-1]

가장긴 길이의 문자찾기



result = 배열.reduce( (acc,cur)=> acc+cur ) // 배열 = [1,2,3] 따라서 result = 6

덧셈뿐만아니라 초기값으로 배열을주어 map, filter 등으로 활용이 가능하다.( 상당히 유용.)



let a = 10; console.log(a.toString(3)); // 101 (3)

진법변환. 10이라는수를 3진법으로 바꾸는방법.



let a = 1111; console.log(Number.parseInt(a, 2)); // 15 (10)

반대 진법변환. 1111이라는 2진수를 10진수로 바꾸는방법



배열.reverse()

배열의 값이 반대로 정렬



let result = […new Set(tmp)];

set바깥에 바로 대괄호 씌우기. 한줄이라도 줄이자.



‘abc’.padEnd(10); // “abc “ ‘abc’.padEnd(10, “foo”); // “abcfoofoof” ‘abc’.padEnd(6, “123456”); // “abc123” ‘abc’.padEnd(1); // “abc”

padEnd ‘abc’문자열을 10글자로 만든다. 딱히말이없다면 스페이스로, 그다음인자로 값을 주면 그다음 인자로.

업데이트: