문제

  • 정수를 가장 큰 값으로 재배열한다.

풀이 01

function superSize(n) {
  return Number(n.toString().split('').sort().reverse().join(''));
}

superSize(1988);        // 9881
superSize(2019);        // 9210
superSize(4812950736);  // 9876543210
  • Number(): 객체 인수를 숫자로 변환한다. 숫자로 변환할 수 없으면 NaN을 반환한다.
  • toString(): 숫자를 문자열로 변환한다.
  • split(): 문자열을 부분 문자열로 분할하고, 새 배열로 반환한다.
  • sort(): 배열의 element를 정렬한 후, 그 배열을 반환한다.
  • reverse(): 배열 내 element의 순서를 반전한다.
  • join(): 배열의 모든 element를 결합하고, 새 문자열로 반환한다.

풀이 02

function superSize(n) {
  return Number(String(n).split('').sort().reverse().join(''));
}

superSize(1988);        // 9881
superSize(2019);        // 9210
superSize(4812950736);  // 9876543210
  • String(): 객체의 값을 문자열로 변환한다.

풀이 03

function superSize(n) {
  return Number(String(n).split('').sort((a, b) => b - a).join(''));
}

superSize(1988);        // 9881
superSize(2019);        // 9210
superSize(4812950736);  // 9876543210

풀이 04

function superSize(n) {
  return parseInt(String(n).split('').sort((a, b) => b - a).join(''));
}

superSize(1988);        // 9881
superSize(2019);        // 9210
superSize(4812950736);  // 9876543210
  • parseInt(): 문자열을 구문 분석하고, 정수를 반환한다.