2016-08-02 33 views
1

Ich habe ein Array von Elementen in Javascript und ich möchte basierend auf seinen Eigenschaften filtern.Filter in JavaScript funktioniert nicht

Nun wird das Response-Objekt, das ich filternde sieht ungefähr so ​​aus:

enter image description here

und die einzelnen Objekte können entweder row_stat_cd"I" oder "L" haben.

Ich möchte nur die "I" Datensätze erhalten. Also habe ich ..

referenceDataRecord.filter(isInactive); 

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

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

aber noch referenceDataRecord enthält alle Datensätze. Es wird nicht gefiltert und nur die "I" Datensätze gespeichert.

+2

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

Antwort

3

Die Methode filter an sich ändert das Array nicht. Sie haben Bezug auf die variable

referenceDataRecord = referenceDataRecord.filter(isInactive); 

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

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

Der Filter() Methode erzeugt ein neues Array einzustellen mit allen Elementen, die den Test durch die bereitgestellte Funktion

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

Verwandte Themen