我使用node.js从外部api接收数百个json格式的数据对象,如下所示:
[
{
"ID": "6548532",
"Status": "active",
"Updated": "2014-11-24T07:32:04-07:00",
"created": "2014-09-15T19:42:37-07:00",
"URL": "www.example.com",
"Categories": [
"cat-a",
"cat-b"
],
"Price": "10.00"
},
{
"ID": "8558455",
"Status": "inactive",
"Updated": "2014-10-24T07:32:04-07:00",
"created": "2014-09-15T19:42:37-07:00",
"URL": "www.example.com",
"Categories": [
"cat-c",
"cat-r"
],
"Price": "20.00"
}
....
]
我想分离这些对象,以便只将
"Status": "active"
的对象写入我的数据库。我知道在使用JSON.parse
之前可以使用字符串操作来完成这项工作,但我想知道是否有更好的方法将json文件拆分为它包含的对象,并将它们保留在一个数组中,然后我可以对其进行处理。 最佳答案
将json解析为javascript对象后,可以使用filter函数删除"Status"
不等于"active"
的元素:
var responseArray = JSON.parse(responseData),
filteredArray = responseArray.filter(
function (obj) {
return obj.Status == "active";
});
// Use filteredArray