如何使用filter函数在javascript中过滤对象
how to filter object in javascript using filter function?
我正在尝试使用filter函数过滤javascript对象。但我得到的错误键没有定义。以下是我的代码https://jsfiddle.net/13n8n3om/
var arr=[
{
"EX": {
"division": "abc",
"is_active": true,
}
},
{
"PY": {
"division": "pqwww",
"is_active": false,
}
}
];
arr = arr.filter(function(obj) {
return obj[key] !== 'EX';
});
console.log(arr)
预期输出
[
{
"PY": {
"division": "pqwww",
"is_active": false,
}
}
]
只需检查对象的键是否与给定字符串不相等。
var arr = [{ "EX": { "division": "abc", "is_active": true, } }, { "PY": { "division": "pqwww", "is_active": false, } }];
arr = arr.filter(function (obj) {
return Object.keys(obj)[0] !== 'EX';
});
document.write('<pre>' + JSON.stringify(arr, 0, 4) + '</pre>');
替换
return obj[key] !== 'EX';
带有
return Object.keys(obj)[0] !== 'EX';
基本上,您需要访问obj
的第一个属性,而密钥是未定义的。
您需要检查obj
不是EX
,如下所示:
arr = arr.filter(function(obj, key) {
if (! obj.EX) {
return obj;
}
});
相关文章:
- 执行过滤对象数组的方法
- 如何按数组/对象值的倍数过滤对象数组
- 访问KendoUI中Datasource过滤对象的字段
- 通过 nodejs 过滤对象数组
- 如何过滤对象内部深度堆叠的数据(并在之后编辑删除它)
- 如何使用filter函数在javascript中过滤对象
- Javascript:按字符串数组过滤对象数组
- 按对象属性过滤对象的角度
- RXJS5 - 按每个对象包含的可观察性过滤对象数组
- 通过使用 AngularJS 遵循 OR 运算符仅过滤对象中的特定字段
- 在 lodash 中按键过滤对象
- Javascript 过滤对象
- Javascript - 如何按参数过滤对象数组
- 使用过滤器和下划线过滤对象数组
- 过滤对象数组时的无限$digest循环
- 使用Moment.js按“上个月”和“上周”单击时过滤对象数组
- 如何在 javascript 中过滤对象中具有特定后缀的键/值
- 按对象的属性过滤对象的 JavaScript 数组并删除重复项
- 对于循环中仅过滤对象
- 通过ng repeat内的关键帧过滤对象