본문 바로가기

Web/Javascript

JavaScript - FILTER

filter() 메소드는 제공된 함수로 구현된 테스트를 통과하는 모든 요소가 있는 새로운 배열을 만듭니다.


var new_array = arr.filter(callback[, thisArg])



예)


모든 작은 값 걸러내기


다음 예는 값이 10 이하인 모든 요소가 제거된 걸러진 배열을 만들기 위해 filter()를 사용합니다.

function isBigEnough(value) {
    return value >= 10;
}
var filtered = [12, 5, 8, 130, 44].filter(isBigEnough);
// filtered 는 [12, 130, 44]




JSON에서 무효한 항목 거르기


다음 예는 0이 아닌, 숫자 id인 모든 요소의 걸러진 json을 만들기 위해 filter()를 사용합니다.

var arr = [
    { id: 15 },
    { id: -1 },
    { id: 0 },
    { id: 3 },
    { id: 12.2 },
    { },
    { id: null },
    { id: NaN },
    { id: 'undefined' }
];

var invalidEntries = 0;

function filterByID(obj) {
    if ('id' in obj && typeof(obj.id) === 'number' && !isNaN(obj.id)) {
        return true;
    } else {
        invalidEntries++;
        return false;
    }
}

var arrByID = arr.filter(filterByID);

console.log('Filtered Array\n', arrByID);
// Filtered Array
// [{ id: 15 }, { id: -1 }, { id: 0 }, { id: 3 }, { id: 12.2 }]

console.log('Number of Invalid Entries = ', invalidEntries);
// Number of Invalid Entries = 4




https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/filter

'Web > Javascript' 카테고리의 다른 글

Arguments 오브젝트  (0) 2017.03.13
함수 정의  (0) 2017.03.13
JavaScript - SORT  (0) 2017.03.02
JavaScript - MAP  (0) 2017.02.28
2016년에 자바스크립트를 배우는 기분  (0) 2017.02.22