如果我有这样的数组:
var array = [{ID:1,value:'test1'},
{ID:3,value:'test3'},
{ID:2,value:'test2'}]
Run Code Online (Sandbox Code Playgroud)
我想通过ID选择一个索引。
即,我想以某种方式选择ID:3并获取{ID:3,value:'test3'}。
什么是最快,最轻巧的方法?
用途array.filter:
var results = array.filter(function(x) { return x.ID == 3 });
Run Code Online (Sandbox Code Playgroud)
它返回一个数组,因此需要获取对象本身[0](如果您确定对象存在):
var result = array.filter(function(x) { return x.ID == 3 })[0];
Run Code Online (Sandbox Code Playgroud)
否则某种辅助函数:
function getById(id) {
var results = array.filter(function(x) { return x.ID == id });
return (results.length > 0 ? results[0] : null);
}
var result = getById(3);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4943 次 |
| 最近记录: |