Programmers
[프로그래머스][JS] 배열 원소의 길이
winter17
2023. 4. 3. 21:32
https://school.programmers.co.kr/learn/courses/30/lessons/120854?language=javascript
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
풀이 과정
function solution(strlist) {
let answer = [];
for (let i = 0; i < strlist.length; i++){
const strlen = strlist[i].length
answer.push(strlen)
}
return answer;
}
주어진 배열의 길이를 세고 반복문을 돌려서 인덱스로 배열을 순회하는데
순회할 때마다 각 문자열의 길이를 세고 그 부분을 변수에 저장을 한다
그리고 answer이라는 새 배열을 선언하고 push메서드를 통해 빈 배열에 채워 넣는다
리뷰
splice() 메서드를 사용해서 풀어보려고 했는데 실패하고 push로 풀었다
splice는 배열의 요소를 삭제, 추가할 때 사용하는 메서드이고
문제는 문자열의 길이를 세어서 배열에 추가하면 된다고 생각했는데
function solution(strlist) {
const answer = [];
for (let i = 0; i < strlist.length; i++) {
const strlen = strlist[i].length;
strlist.splice(i, 1, strlen);
answer.push(strlen);
}
return answer;
}
splice()메서드는 삭제한 요소들을 반환하므로 answer 변수에 배열 대신에 문자열의 길이를 할당해야 한다.
위의 노란 부분이 내가 생각하지 못한 부분이다. splice 메서드를 answer에 할당하도록 코드를 짰기 때문에 틀렸었다