해말그미의 코딩공부

외계행성의 나이 본문

Programmers

외계행성의 나이

해말그미 2024. 10. 17. 22:29

 

🌼 풀이

function solution(age) {
  return age
    .toString()
    .split("")
    .map((v) => "abcdefghij"[v])
    .join("");
}

 

age.toString() : 문자열로 변환. 예를들어, age가 23 이면 문자열 "23"

.split("") : 각 문자로 나눠 배열로 만든다. "23"은 ["2","3"]

.map((v) => "abcdefghij"[v]) ; 문자열 자체도 인덱스[]로 접근 가능한 것을 기억해야 한다. ["c","d"]를 반환한다.

.join(""): 배열 사이사이가 다 붙어서 하나의 문자열로 만든다 "cd"

 

🌼 다른 풀이

 

function solution(age) {
    let char = 'abcdefghij'
    return Array.from(age.toString()).map(t => char[+t]).join('');
}

 

Array.from(age.toString()) :
Array.from()은 문자열을 배열로 변환하는 메서드이다. age.toString()이 "23"이라면, 이를 ['2', '3']라는 배열로 변환한다. 각 문자가 배열의 요소로 들어가게 된다.

 

단항 덧셈 연산자는 주로 문자열을 숫자로 변환할 때 많이 사용. +를 값 앞에 붙이면, 그 값을 숫자로 변환하려는 시도가 이루어진다. 이 연산자는 숫자가 아닌 값에 대해 숫자로 변환 가능한 경우 변환해주고, 이미 숫자라면 그대로 반환한다.

 

<예시>

console.log(+true);   // 1 (불리언 true는 숫자 1로 변환)
console.log(+false);  // 0 (불리언 false는 숫자 0으로 변환)
console.log(+"42");   // 42 (문자열 '42'는 숫자 42로 변환)
console.log(+"abc");  // NaN (숫자로 변환할 수 없는 경우 NaN)
console.log(+null);   // 0 (null은 숫자 0으로 변환)
console.log(+undefined);  // NaN (undefined는 NaN으로 변환)

'Programmers' 카테고리의 다른 글

약수 구하기  (0) 2024.09.17
주사위의 개수  (0) 2024.09.12
최댓값 만들기 (2)  (0) 2024.09.10
배열 회전 시키기  (0) 2024.09.08
Comments