Jak użyć metody _.where z biblioteki underscore.js do bardziej wyszukanych wyszukiwań
var a = {
"title": "Test 1",
"likes": {
"id": 1
}
}
var b = {
"title": "Test 2",
"likes": {
"id": 2
}
}
var c = [a, b];
var d = _.where(c, {
"title": "Test 2",
"likes": {
"id": 2
}
});
//d => outputs an empty array []
W tej sytuacji oczekiwałbym, że otrzymam odwołanie do obiektu w pamięci, ale d, ale w rzeczywistości działa tylko na właściwościach roota.
_.where(c, {title: "Test 2"});
=> outputs [object]
gdzie obiekt jest odniesieniem dla c [1];
EDYTOWAĆ: znalazłem możliwe rozwiązanie przy użyciu _.filter ()
_.filter( c, function(item){
if (item.title == "Test 1" && item.likes.id == 1){
return item;
}
})
outputs => [object] with reference for variable a