【发布时间】:2016-08-09 07:27:30
【问题描述】:
我正在尝试按内容过滤对象数组,即:
https://jsfiddle.net/z7g3unyu/2/
var arr =[
{
"uid": "1",
"name": "John Doe"
},
{
"uid": "2",
"name": "Kate Roe"
}
];
var newArr = arr.filter(function(e) {
return e["uid"] == 1;
});
alert(newArr["name"]);
我想创建一个新数组,它只包含一个 uid 等于 1 的对象。但是,它给了我未定义的。我做错了什么?
【问题讨论】:
-
两个问题:你的
.filter()回调使用=而不是==(=用于赋值),alert()调用应该是alert(newArr[0].name)或alert(newArr[0]["name"])(两者都可以)。 -
虽然 = 是一个拼写错误,但第二点正是我要找的!谢谢!
标签: javascript jquery arrays