我知道给定一个键(例如,如果我知道object.name ='Sam'),则使用:
var index = array.map(function(el) {return el.name}).indexOf('Sam');
我可以使用object.name ='Sam'获得数组元素的索引。但是说我在数组中有多个object.name ='Sam'的元素,但现在我知道了object.name,object.age和object .size-是否可以修改上面的代码以获取索引,同时还要检查object.age和object.size?
假设您在诸如中具有变量中的值name
,age
并且size
正如您在注释中提到的那样,可以使用如下函数:
function findInArray(arr) {
for (var i = 0; i < arr.length; i++) {
var el = arr[i];
if (el.name == name && el.age == age && el.size == size)
return i;
}
return -1;
};
如果找到匹配项,它将返回数组中对象的索引,-1
否则返回...
var data = [{
name: "Sis",
age: "17",
size: "10"
}, {
name: "Sam",
age: "17",
size: "10"
}, {
name: "Som",
age: "17",
size: "10"
}],
name = "Sam",
age = "17",
size = "10";
function findInArray(arr) {
for (var i = 0; i < arr.length; i++) {
var el = arr[i];
if (el.name == name && el.age == age && el.size == size)
return i;
}
return -1;
};
console.log(findInArray(data));
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句