2016-09-19 17 views
1

Zustand Reaktion ist wie folgt:Überprüfen Sie, ob alle Objekte sind falsch

[ 
    {type: "Benzine", active: false}, 
    {type: "Diesel", active: false}, 
    {type: "Electricity", active: false} 
] 

Wie kann ich überprüfen, ob alle active Werte falsch sind.

Gibt es eine Möglichkeit, es mit lodash zu tun?

+2

[ 'arr.some (obj => obj.active == false!)!'] (Https://jsfiddle.net/5vxbdcy6/) – Tushar

Antwort

2

können Sie die folgenden testen, ob jeder active Eigenschaft gilt:

var arr = [ 
 
     {type: "Benzine", active: false}, 
 
     {type: "Diesel", active: false}, 
 
     {type: "Electricity", active: false} 
 
    ] 
 

 
    console.log(arr.every(obj => obj.active));

var arr = [ 
 
     {type: "Benzine", active: true}, 
 
     {type: "Diesel", active: true}, 
 
     {type: "Electricity", active: true} 
 
    ] 
 

 
    console.log(arr.every(obj => obj.active));

var arr = [ 
 
     {type: "Benzine", active: false}, 
 
     {type: "Diesel", active: true}, 
 
     {type: "Electricity", active: false} 
 
    ] 
 

 
    console.log(arr.every(obj => obj.active));

1

Sie können jede Funktion von lashash verwenden, um zu überprüfen, ob für jedes Objekt "active" (falsch) aktiv ist.

var data = [ 
    {type: "Benzine", active: false}, 
    {type: "Diesel", active: false}, 
    {type: "Electricity", active: true} 
]; 
// First argument is the data and second argument is the predicate to check 
var res = _.every(data, {active: false}); // Returns true if all elements pass the predicate match else false. 
document.getElementById("data").innerHTML = res; 
Verwandte Themen