const input = 'turpentine and turtles';
const vowels = ['a', 'e', 'i', 'o', 'u'];
const resultArray = [];
for(let i = 0; i < input.length; i++) {
for(let j = 0; j < vowels.length; j++) {
if(input[i] === vowels[j]) {
if(input [i] === 'u' || input [i] === 'e') {
resultArray.push(input[i]);
}
resultArray.push(input[i]);
}
}
}
console.log(resultArray);
짜면서 구현이 어려웠던 부분은 어떻게 E와 U만 더블링시킬 것인지였다.
루프가 돌 때 e나 u가 포함되어 있으면 ,push()를 한 번 더 해 줘야 하는데 이 부분이 좀 고민됐던,,,
그럼 for loop 안에 e나 u가 있다는 가정이 한 번 더 들어 있고, 이 경우 push로 resultarray에 한번 추가해 주고 그 뒤에 다시 돌면서 같으면 한 번 더 추가해 줄 테니 e와 u만 두 번이 될 것 같아서 이대로 짰다
그랬더니 됨; 왜 됨????ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
아무튼 되어서 기쁘고 정답이랑 비교해 봤을 때도 내 코드가 더 깔끔해서 더 기쁘다(정답 코드는 ||을 사용하지 않고 따로 걸어 줬더라)
이렇게 얻어 걸릴 때도 있구나ㅎㅎ
오늘도 불태워 봐야지
'개발 일기' 카테고리의 다른 글
[Javascript] read-only name property (1) | 2022.10.01 |
---|---|
[Javascript] .join() method는 어디까지 join해 줄 수 있을까? (1) | 2022.10.01 |
[Javascript] 며칠만이야 이게... (0) | 2022.09.30 |
[Javascript] When to use for and when to use while (0) | 2022.09.25 |
[Javascript] Pass-by-Reference라는 용어를 처음 보았다. (0) | 2022.09.25 |