Tho*_*asD 2 javascript arrays underscore.js
我有一系列像这样的汽车:
[{ name:"Toyota Minivan", id:"506" }, { name:"Honda Civic", id:"619" }]
Run Code Online (Sandbox Code Playgroud)
我试图检查数组是否包含某个id.
我试过了
var x =!!_.where(cars, {id:'506'}).length;
Run Code Online (Sandbox Code Playgroud)
如果数组包含id,则期望它返回true,但它总是返回false.
我在这是要干嘛 ?
顺便说一句,如果有更好的方法,我不必使用underscore.js.
谢谢托马斯
Gab*_*art 13
您的代码确实有效(一旦修复了对象数组中的语法错误):http: //jsfiddle.net/ArPCa/
var cars = [{ name:"Toyota Minivan", id:"506"}, { name:"Honda Civic", id:"619"}];
var x =!!_.where(cars, {id:'506'}).length;
console.log('value: ' + x);
Run Code Online (Sandbox Code Playgroud)
返回"value:true".所以其他地方肯定存在问题.
但是,更好的方法可能是some:
var y = _.some(cars, function(c) {
return c.id == '506';
});
Run Code Online (Sandbox Code Playgroud)
我知道这已经很晚了,但更容易:
var cars = [{ name:"Toyota Minivan", id:"506"}, { name:"Honda Civic", id:"619"}];
function findById(id) {
return _.contains(_.pluck(cars, 'id'), id);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
26934 次 |
| 最近记录: |