본문 바로가기

JavaScript

[자바스크립트 문법] filter()메소드와 forEach() 반복문

filter()

filter()는 콜백함수에서 리턴 값이 true인 것만 모아서 새 배열로 만드는 함수이다. 일반적으로 배열에서 특정 원소를 거를 때, 사용한다.

 

배열에서 조건에 맞는 원소만 제거하고 싶을 때
const numbers = [1, 2, 3, 4, 5];
function filterNumber(num){
	return num !== 3;
};

numbers.filter(filterNumber);

// [1, 2, 4, 5]

- filter()은 값이 true인 것만 새 배열로 만든다. 즉, 위 코드에서 배열에서 삭제하고 싶은 원소 '3'과 같지 않은 함수를 만들어서 filter에 콜백함수로 넣는다. 

 

조건에 맞는 원소만 제거 후 새로운 배열 변수로 저장
const newArr = numbers.filter(item => item > 2);
newArr;

// 출력 [3, 4, 5]

forEach()

forEach()는배열의 각각 원소에 대해 콜백 함수를 실행한다.

const numbers = [1, 2, 3, 4, 5];
function print(item){
	console.log(item);
};

numbers.forEach(print);

// 1, 2, 3, 4 개행되서 출력