2017-11-22 1 views
0

Ich habe 2 Arrays ein Typoskript Array filtern:Wie kann ich mit Elementen in einem anderen Array

[ 
    { 
    "id": 1, 
    "name": "All", 
    }, 
    { 
    "id": 2, 
    "name": "APR", 
    }, 
{ 
    "id": 3, 
    "name": "TER", 
    }] 

Das zweite Array ist ["APR", "TER"]

Ich mag das erste Array mit dem zweiten filtern, dass der Ausgang sollte

sein
[{ 
    "id": 2, 
    "name": "APR", 
    },{ 
    "id": 3, 
    "name": "TER", 
    }] 

Mit Filterfunktion versuchen - ist das möglich?

Dank Anand

Antwort

1

Ziemlich Standard Verwendung der Filtermethode. geben Sie einfach den richtigen Zustand zu überprüfen, und Sie sind gut zu gehen:

const myArray = [{ 
 
    "id": 1, 
 
    "name": "All", 
 
}, { 
 
    "id": 2, 
 
    "name": "APR", 
 
}, { 
 
    "id": 3, 
 
    "name": "TER", 
 
}]; 
 

 
const otherArray = [ 
 
    "APR", 
 
    "TER", 
 
]; 
 

 
const filtered = myArray.filter(x => otherArray.includes(x.name)); 
 

 
console.log(filtered)

1

Sie können Ihre Array mit der filter Funktion filtern:

const items = [ 
    { 
    "id": 1, 
    "name": "All", 
    }, 
    { 
    "id": 2, 
    "name": "APR", 
    }, 
{ 
    "id": 3, 
    "name": "TER", 
    }] 

const filterValues = ["APR", "TER"] 

const filtered = items.filter(item => filterValues.indexOf(item.name) > -1) 
+0

@anand ich den Code aktualisieren, nachdem Sie Ihre Frage bearbeiten – Atemu

Verwandte Themen