function solution(strlist) {
var answer = [];
for(let i =0; i < strlist.length; i++){
let str= 0;
let words= strlist[i].split('');
for(let j =0; j < words.length; j++){
str++;
}
answer.push(str)
}
return answer;
}
난 이 문제를 이중 포문으로 풀고 있었는데 마지막 부분에서 해결을 하지 못해서 다른 사람 풀이를 보고 해결하였다.
신박하다!!!!!!
- strlist.length 만큼 돈다. let i = [0]이면 [”We”] 값이 온다.
- let str = 0을 포문 안에 적어준다. 이건 나중에 배열을 카운트해주기 위해서다.
- let words= strlist[i].split(''); 이 부분은 [”w”,”e”]
- 그다음 이중 포문을 사용하여 words 길이만큼 돈다. 길이는 [”w”,”e”] = 2이다.
- for 문을 돌면서 str++; 길이만큼 카운트를 해준다.
- 그래서 answer.push(str) 해주면
- 첫 번째 strlist[0] —> [”w”,”e”] for 문을 돌면서 카운트하면 2값이다.
- 두 번째 strlist[1] —> [”a”,”r”,”e”] for 문을 돌면서 카운트하면 3값이다.
- 세 번째 strlist[2] —> [”t”,”h”,”e”] for 문을 돌면서 카운트하면 3값이다.
- 세 번째 strlist[3] —> [”w”,”o”,”r”,”l”,”d”,”!
- answer.push 하면[2]
- answer.push 하면[2,3]
- answer.push 하면[2,3,3]
- answer.push 하면[2,3,3,6] 이 된다.
function solution(strlist) {
var answer = [];
for (let i = 0; i < strlist.length; i++) {
answer.push(strlist[i].length);
}
return answer;
}
length
를 사용하면 바로 strlist[i].legth 가 바로바로 push 되는 간단한 풀이이다.