我想获取所有值,其中category.id = 1 所以我应该得到 2 个结果
我的 JSON 看起来像这样:
var test = [
{
"id": 1,
"name": "name1",
"value": "value1",
"category": {
"id": 1,
"name": "category1"
}
},
{
"id": 2,
"name": "name2",
"value": "value2",
"category": {
"id": 1,
"name": "category1"
}
},
{
"id": 3,
"name": "name3",
"value": "value3",
"category": {
"id": 2,
"name": "category2"
}
}
];
我的 JavaScript 看起来像这样:
var x = _.filter(test,
function (innerObject) {
return _.filter(innerObject,
function (category) {
return category.id === 1;
});
});
console.log(x);
我做了一个 JS 小提琴 http://jsfiddle.net/Z6AnC/但我每次都会得到所有 3 个元素......而不仅仅是 2 个正确的元素!
我也尝试过类似的东西
var x = _.where(test, {"category":{"id":2}});
console.log(x);
这对我来说似乎是合乎逻辑的,但数组总是空的
另一个jsFiddle http://jsfiddle.net/Cv6Bu/
我希望有人能告诉我我做错了什么......
谢谢你!