자바스크립트 배열함수 정리

developer.do·2022년 12월 4일

오늘 자바스크립트 개념과 관련하여 몇개의 쪽지시험?을 보게되었다.

10문제가량을 풀었지만, 유독 안풀리는 문제가 있어서 계속 붙잡고 있었다. 바로 아래와 같다.

6. 배열을 입력으로 받아, 입력으로 주어진 배열의 요소 중 2의 배수만 ‘배열의 형태로’ 출력하는 함수를 작성하고 호출까지 해주세요.

사실 2의 배수만 출력을 하면 되기 때문에 굉장히 쉬운 문제라고 생각을 했다.
그냥 편하게 아래와 같이 적어봤다.


let array = [ 1,2,3,4,5,6,7,8,9,10 ] 
function 배열함수() {
for ( let i = 0; i < array.length; i++ ) {
 if(array[i] % 2 == 0){
  console.log(result) 
  }
 }
}

하지만 여기에는 몇가지 문제가 있었으니..
바로 배열의 형태로 출력을 해야한다.
그리고 나는 단순히 값을 나열만 한것이지, 배열에 추가하지를 않았다.
따라서 result.push를 사용해서 다시 작성을 해봤다.

    function 배열함수() {
        let array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
        let result = []  // 변수 result에 이따가 넣을거기 때문에 빈 값을 잡자.
        for (let i = 0; i < array.length; i++) {
            if (array[i] % 2 == 0) {

                result.push(array[i])  // result에 array[i] 값을 push 해주면 된다.
                console.log(result)


            }

        }

    }
    console.log(배열함수())

이렇게해주면 끝이다.

하지만 뭔가 어렵게 한 느낌이 들었다. 분명 쉽게 할 수 있는 느낌이 들었다.

그래서 계속 고민을 해보다가 결국 튜터님께 문의를 드려봤더니. filter를 통해서 한방에 정리를 해주셨다.

let array = [1,2,3,4,5,6,7,8,9,10]
console.log(array.filter((value)=> value & 2 === 0))  
이렇게 한줄에 끝이나버렸다.

0개의 댓글