개발 오답노트

[js] 리스트 내에 undefind를 제거하는 방법(filter)

꾸준이 2022. 1. 11. 21:51

react에서 map함수로 렌더링을 할때 간혹 리스트 내에 undefined가 있어서 에러가 뜨는 경우가 있다. 이때, undefined를 제거하는 방법은 filter를 이용해주면 된다.

let example = [30, 21, undefined, 15, undefined];
let result = example.filter(item => item);

// let result = example.filter((item) => { return item !== undefined ;}); 를 축약해서
// 위와 같이 한줄로 쓸 수 있다.
// item 에는 각각 30, 21, undefined, 15, undefined라는 정보가 차례로 담기며, 그 item이 undefined가
// 아닐때만 return해달라는 의미이다 (여기서 return은 그 값만 남기겠다는 의미이다! )

console.log(result);
// 결과값 [ 30, 21, 15 ]


따라서 이와 같이 undefined가 제거된 리스트만 남게 된다.