코딩테스트

코딩테스트 풀이 - 조건에 맞게 수열 변환하기 1 | forEach 문

히새 2023. 11. 15. 20:08

 

반복문 안에 if 문을 넣어 조건을 설정해준다!

 

 

num 값을 대체하기 위해서 num = num * 2 를 작성하였는데 계산된 값이 적용이 안된 결괏값을 볼 수 있다.

왜 안되는거지!? replace 를 써봤는데도 오류가 났다

 

replace 가 왜 오류가 나는 것인지 모르겠다.

 

또, 내가 자주 틀리는 것 중 하나는 반복문 안에 개개인 요소로 간단한게 아니라 if 문 같이 복잡한 걸 작성하려면

(() => ) 이 형태가 아닌, (() => {}) 중괄호를 넣어줘야 한다는 점이다.

 

 

 

그래서 사용한 방법은 forEach 에서 index 도 매개변수로 받아서 배열의 index 번째 요소를 재할당해주는 방법이다!

 

사실 이건 인공지능의 힘을 빌린건데, 그 동안 각각의 아이템과 인덱스가 동시에 필요했던 적이 있는데 매개변수를 하나 더 쓸 생각을 못해서 다른 방법을 써왔던 것 같다.

 

매개변수로 index 추가하기 잘 기억해뒀다가 써먹어야겠다!


🎈 forEach 문

 

각 배열 요소에 대해 제공된 함수를 한 번씩 실행한다.

forEach(callbackFn)
forEach(callbackFn, thisArg)

 

콜백함수와 thisArg 를 매개변수로 가지고, thisArg 는 선택사항이다.

 

- 콜백함수 : 배열의 각 요소에 대해 실행할 함수

총 3개의 인수를 사용하여 호출된다.

element 배열에서 처리 중인 현재 요소
index 배열에서 처리 중인 현재 요소의 인덱스
array forEach() 를 호출한 배열

 

- thisArg : 콜백함수를 실행할 때 this 값으로 사용할 값