나의 풀이 => 못품 ㅜ
1) 먼저 one에서부터 zero까지의 객체를 만들었다.
2) for in으로 객체를 돌리면서 numbers의 문자열에 strNums의 key값이 있는지 includes로 확인한다
3) answer에 strNums의 key값을 차례로 저장을 한다.
function solution(numbers) {
let sort = "";
let answer = "";
let strNums = {
one : '1',
two : '2',
three : '3',
four : '4',
five : '5',
six : '6',
seven : '7',
eight : '8',
nine : '9',
zero : '0'
}
for(const key in strNums) {
if(numbers.includes(key)) {
answer += strNums[key]
}
}
console.log(answer)
}
문제점
다른사람의 풀이
1) 먼저 strNums배열에 "zero"부터 "nine"까지 원소를 넣는다.
2) strNums를 forEach문으로 돌리면서 split(x)로 numbers문자열에 x값에 해당하는 자리만 지워준다.
3) 그 다음 join()함수로 그 자리를 idx로 채워준다.
function solution(numbers) {
let answer = 0;
let strNums = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]
strNums.forEach((x, idx) => {
numbers = numbers.split(x).join(idx)
})
return Number(numbers)
}
배운점