pri*_*nce 0 javascript javascript-framework underscore.js angularjs
我想知道javascript数组中是否存在给定值.
这是我的情况,
var array = [{'id': 1, 'name': 'xxx'},
{'id': 2, 'name': 'yyy'},
{'id': 3, 'name': 'zzz'}];
var searchValue = {'id': 1, 'name': 'xxx'};
Run Code Online (Sandbox Code Playgroud)
我试过以下,
var exists = _.where(array, {name: 'xxx'});
Run Code Online (Sandbox Code Playgroud)
它返回obj {'id': 1, 'name': 'xxx'}.它按预期工作.
在这里,我需要检查exists.length > 0是否存在
但是有没有其他功能得到相同.
因为如果函数返回,true如果存在,false如果不存在,那就更好了.
这是同样的想法,但这会成功吗?
return !!_.findWhere(array, {name : 'xxx'});
Run Code Online (Sandbox Code Playgroud)
否则(但稍长)
return _.some(array, function (item) {
return (item.name === "xxx");
});
Run Code Online (Sandbox Code Playgroud)
另外,请注意_.where和_.findWhere似乎在弃用行...而且正如@Juzer Ali指出的那样,如果您的目标是足够现代化的浏览器,您可能甚至不需要它.
| 归档时间: |
|
| 查看次数: |
17575 次 |
| 最近记录: |