2016-08-02 2 views
1

У меня есть массив элементов в Javascript, и я хочу фильтровать на основе его свойств.Фильтр в JavaScript не работает

Теперь объект ответа, который я хочу, чтобы фильтровать выглядит примерно так:

enter image description here

И отдельные объекты могут иметь row_stat_cd либо "I" или "L".

Я хочу получить только записи "I". Поэтому я сделал ..

referenceDataRecord.filter(isInactive); 

    function isInactive(obj) { 
     return obj.row_stat_cd != "L"; 
    }; 

    angular.forEach(referenceDataRecord, function (k, v) { 
     ......... 

но все еще ссылкаDataRecord содержит все записи. Он не фильтруется и сохраняет только записи "I".

+2

'referenceDataRecord = referenceDataRecord.filter (isInactive);'? – gcampbell

ответ

3

Метод filter сам по себе не модифицирует массив. Вы должны установить ссылку на переменную

referenceDataRecord = referenceDataRecord.filter(isInactive); 

    function isInactive(obj) { 
     return obj.row_stat_cd != "L"; 
    }; 

    angular.forEach(referenceDataRecord, function (k, v) { 

Метод фильтра() создает новый массив со всеми элементами, которые проходят тест, реализованный при условии функции

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter

Смежные вопросы