返回具有过滤结果的新 JSON 对象
Returning a new JSON object with filtered results
我正在寻找 return 从现有 JS 对象过滤某些结果后的新 JS 对象。
假设我有以下 JS 对象:
{ "Examples" :
[ { "id": 1, "name": "Tim", "answer": "yes"},
{ "id": 2, "name": "Jon", "answer": "no"},
{ "id": 3, "name": "Don", "answer": "yes" ] }
我想通过这个对象过滤所有是的答案和return一个看起来像这样的对象:
{ "Examples" :
[ { "id" : 1, "name": "Tim", "answer": "yes"},
{ "id" : 3, "name": "Don", "answer": "yes"} ] }
首先:这是一个 JavaScript 对象,而不是 JSON 对象。 JSON是一种序列化方案。
您可以使用 .filter()
:
过滤数组
var obj = { "Examples" :
[ { "id": 1, "name": "Tim", "answer": "yes"},
{ "id": 2, "name": "Jon", "answer": "no"},
{ "id": 3, "name": "Don", "answer": "yes" ] };
obj.Examples = obj.Examples.filter(function(entry) {
return entry.answer === "yes";
});
我正在寻找 return 从现有 JS 对象过滤某些结果后的新 JS 对象。
假设我有以下 JS 对象:
{ "Examples" :
[ { "id": 1, "name": "Tim", "answer": "yes"},
{ "id": 2, "name": "Jon", "answer": "no"},
{ "id": 3, "name": "Don", "answer": "yes" ] }
我想通过这个对象过滤所有是的答案和return一个看起来像这样的对象:
{ "Examples" :
[ { "id" : 1, "name": "Tim", "answer": "yes"},
{ "id" : 3, "name": "Don", "answer": "yes"} ] }
首先:这是一个 JavaScript 对象,而不是 JSON 对象。 JSON是一种序列化方案。
您可以使用 .filter()
:
var obj = { "Examples" :
[ { "id": 1, "name": "Tim", "answer": "yes"},
{ "id": 2, "name": "Jon", "answer": "no"},
{ "id": 3, "name": "Don", "answer": "yes" ] };
obj.Examples = obj.Examples.filter(function(entry) {
return entry.answer === "yes";
});