
풀이 function solution(s) { if(s.length===4 || s.length===6){ const temp = parseInt(s); if(temp==s){ return true; }else{ return false; } }else{ return false; } } function solution(s) { if((s.length == 4 || s.length == 6) && /^[0-9]+$/.test(s)) { return true; }else{ return false; } } 위는 int형으로 바꿔서 비교하는 코드이고 아래는 정규식을 이용한 코드이다.
sort sort() 메서드는 배열의 요소를 적절한 위치에 정렬한 후 그 배열을 반환합니다. 정렬은 stable sort가 아닐 수 있습니다. 기본 정렬 순서는 문자열의 유니코드 코드 포인트를 따릅니다. 정렬 속도와 복잡도는 각 구현방식에 따라 다를 수 있습니다. const months = ['March', 'Jan', 'Feb', 'Dec']; months.sort(); console.log(months); // expected output: Array ["Dec", "Feb", "Jan", "March"] const array1 = [1, 30, 4, 21, 100000]; array1.sort(); console.log(array1); // expected output: Array [1, 10000..
slice slice() 메서드는 어떤 배열의 begin부터 end까지(end 미포함)에 대한 얕은 복사본을 새로운 배열 객체로 반환합니다. 원본 배열은 바뀌지 않습니다. 이때 주의할 점은 얕은 복사를 한다는 것입니다. 즉 원본 배열이 바뀌면 slice한 배열이 바뀔수 있습니다. const animals = ['ant', 'bison', 'camel', 'duck', 'elephant']; console.log(animals.slice(2)); // expected output: Array ["camel", "duck", "elephant"] console.log(animals.slice(2, 4)); // expected output: Array ["camel", "duck"] splice splice..

풀이 function solution(s) { return s.split('').sort().reverse().join(''); } split은 저번 문제에 나와서 알고 있었다. 조만간 split, splice같은 비슷한 맥락의 함수를 정리해서 올리겠다. reverse라는 함수가 있는지 오늘 처음알았다. 그전에는 if문이나 삼항연산자로 역순을 만들어야 했는데 이런방법도 있구나 싶었다. join은 배열을 문자열로 변환하는 함수이다. 즉 정리하면 split으로 문자열을 배열로 만들고 sort로 정렬하고 reverse로 역순정렬하고 join으로 다시 배열을 문자열로 합치는 식이다.

풀이 function solution(arr, divisor) { for(let i=0;i{ return a-b; }) if(answer.length===0){ answer.push(-1) } return answer; } function solution(arr, divisor) { let answer = []; arr.map((i) => { i % divisor === 0 && answer.push(i); }) return answer.length ? answer.sort((a, b) => a - b) : [-1]; } 위는 map과 삼항연산자를 사용하지 않은 경우이고 밑에는 map과 삼항연산자로 같은 코드이지만 조금 더 깔끔하게 표현한 경우이다. 저번 글에서도 올렸는데 숫자비교를 할때는 sort를 저..