function solution(my_string) {
let result = 0
for(let i = 0 ; i < my_string.length;i++) {
// 이번 반복의 연속되는 숫자를 문자열로 취득
let thisNum = ''
while(!Number.isNaN(Number(my_string[i]))) {
thisNum+= my_string[i]
i++
}
// 문자가 온 경우 취득되었던 숫자를 Number형으로 변환 후 result에 더함
result+= +thisNum
}
return result
}
한 자리 숫자는 괜찮았는데 두 자리는 어떻게해야할지 감이 안와서 다른 분 코드를 보았다. for문 안에 while문으로 뒤에도 숫자면 이어 붙이고 밖으로 나와서 더해주는 방식.. ㅇ0ㅇ Number.isNaN 이라는 표현도 알지 못했다.
function solution(sides) {
var count = 0;
var max = Math.max(...sides)
var min = Math.min(...sides)
for(let i = max-min+1 ; i <= max ; i ++) {
count++
}
for(let i = max+1 ; i < max+min ; i ++) {
count++
}
return count
}
삼각형 만드는 조건을 몰라서 덧셈 뺄셈하면서 구하다가 테스트 문제는 넘어갔는데 제출 문제들은 다 틀렸었다. max - min -1 렇게 하는 것 보다 뺀 다음 하나씩 숫자 더해 나가는게 맞다.
function solution(spell, dic) {
spell = spell.sort().join("")
return dic.map(a => a.split("").sort().join("")).find(a => a===spell) == undefined ? 2 : 1
}
function solution(p, d) {
return d.some(s => p.sort().toString() == [...s].sort().toString()) ? 1 : 2;
}
for of 로 푸는 법, forEach로 푸는 법, filter를 이용하는 법 등 다양한데
some을 사용하는 법이 가장 짧다. every 도 가능. 나의 답도 남의 답임