我有一个JSON响应,如下所示:
[
{
"@level": "info",
"@message": "Text"
},
{
"@level": "error",
"@message": "Text"
},
{
"@level": "info",
"@message": "Text"
}
]
如何过滤JSON响应以仅显示对象中的"@level" === "error"
。我知道如何在JS中过滤JSON数组(例如,如本文所述(。但是,如果密钥包含像@
这样的特殊字符,则此解决方案不起作用。
我在这里错过了什么?
与链接答案中的工作原理相同,只需在数组上使用括号注释:
let arr = [
{
"@level": "info",
"@message": "Text"
},
{
"@level": "error",
"@message": "Text"
},
{
"@level": "info",
"@message": "Text"
},
];
console.log(arr.filter(function(item){
return item["@level"] == "error";
}));