Javascript

[javascript] filter 사용법

black-berry 2022. 11. 28. 21:58
728x90
반응형

filter 메서드

조건에 참인 요소만으로 새로운 배열을 생성하여 반환하는 메서드이다.

배열에서 원하는 데이터만 추출 하고 싶을 때 자주 사용한다.

 

let fruit_list = ['사과','감','감','배','포도','포도','딸기','포도','감','수박','딸기'] 

fruit_list.filter(function(fr){
	return fr == '감';
})
// ['감', '감', '감']

function filterCallbackFunction(fr){
	return fr == '수박';
};
fruit_list.filter(filterCallbackFunction);
// ['수박']

( => 화살표 함수는 지원이 안 되는 브라우저도 있어서 function(){}을 사용하는 게 좋다.)

let fruit_list = ['사과','감','감','배','포도','포도','딸기','포도','감','수박','딸기'] 

fruit_list.filter(fr => fr =='포도') // ['포도', '포도', '포도']

fruit_list.filter((f)=>{
	return f == '딸기'
})
// ['딸기', '딸기']

 

 

filter 함수는 중복 값이 처리되지 않는다.

let fruit_list = ['사과','감','감','배','포도','포도','딸기','포도','감','수박','딸기'] 
let result = fruit_list.filter(fr => fr =='포도')
console.log(result); //['포도', '포도', '포도']

//중복을 제거하려면?
new Set(result); //{'포도'}

 

*기본구문

arr.filter(callback(element[, index[, array]])[, thisArg])

callback : 각 요소에 대한 조건값

element : 처리할 현재 요소

index : 현재 인덱스

array : filter를 호출한 배열

thisArg : callback을 실행 할 때 this로 사용하는 값

728x90
반응형