Javascript 如何找出数组中包含的项的位置?
我知道项目的名称,并想知道它在数组中的位置,我该如何做?使用数组的Javascript 如何找出数组中包含的项的位置?,javascript,Javascript,我知道项目的名称,并想知道它在数组中的位置,我该如何做?使用数组的indexOf方法。如果不存在,则添加它(代码示例或其他位置) ["a","b","c","d","e"].indexOf("c") 2 如果要按名称属性查找值,请执行以下操作: for (var i = 0; i < this.length; i++) { if(this[i].name == name) { return i; } } return -1; for(var i=0;i
indexOf
方法。如果不存在,则添加它(代码示例或其他位置)
["a","b","c","d","e"].indexOf("c")
2
如果要按名称属性查找值,请执行以下操作:
for (var i = 0; i < this.length; i++) {
if(this[i].name == name) {
return i;
}
}
return -1;
for(var i=0;i
使用数组的索引方法。如果不存在,则添加它(代码示例或其他位置)
如果要按名称属性查找值,请执行以下操作:
for (var i = 0; i < this.length; i++) {
if(this[i].name == name) {
return i;
}
}
return -1;
for(var i=0;i
您可以在阵列中循环:
var array = ['item1', 'item2', 'item3'];
function findIndex(array, item) {
for (var i = 0; i < array.length; i++) {
if (array[i] === item) {
return i;
}
}
return -1;
}
alert(findIndex(array, 'item2'));
var数组=['item1','item2','item3'];
函数findIndex(数组,项){
对于(var i=0;i
或者对更复杂的类型使用比较器函数:
var array = ['item1', 'item2', 'item3'];
function findIndex(array, comparer) {
for (var i = 0; i < array.length; i++) {
if (comparer(array[i])) {
return i;
}
}
return -1;
}
var index = findIndex(array, function(item) {
return item === 'item2' ;
});
var数组=['item1','item2','item3'];
函数findIndex(数组、比较器){
对于(var i=0;i
您可以在阵列中循环:
var array = ['item1', 'item2', 'item3'];
function findIndex(array, item) {
for (var i = 0; i < array.length; i++) {
if (array[i] === item) {
return i;
}
}
return -1;
}
alert(findIndex(array, 'item2'));
var数组=['item1','item2','item3'];
函数findIndex(数组,项){
对于(var i=0;i
或者对更复杂的类型使用比较器函数:
var array = ['item1', 'item2', 'item3'];
function findIndex(array, comparer) {
for (var i = 0; i < array.length; i++) {
if (comparer(array[i])) {
return i;
}
}
return -1;
}
var index = findIndex(array, function(item) {
return item === 'item2' ;
});
var数组=['item1','item2','item3'];
函数findIndex(数组、比较器){
对于(var i=0;i
此项的类型是什么?您的意思是,您知道数组中某项的值并希望知道数字键,还是知道对象/关联数组中某项的键/属性名称并希望知道位置?缺少规范:如果元素在数组中出现多次,您希望发生什么情况?如果找不到元素会发生什么?该项的类型是什么?您的意思是,您知道数组中某项的值,并且希望知道数字键,或者您知道对象/关联数组中某项的键/属性名称,并希望知道其位置?缺少规范:如果元素在数组中出现多次,您希望发生什么情况?如果找不到元素该怎么办?+1 OP注意:注意,并非所有实现都有此功能;请参阅Mark Byers的答案,了解如果没有它该怎么办。+1 OP注意:请注意,并非所有实现都有此功能;请参阅Mark Byers的答案,了解如果它不存在该怎么办。如果(!Array.prototype.indexOf){
,那不应该是吗?我非常确定数组
(构造函数)从来没有indexOf
在它上面。谢谢你的链接。我不知道这一点。@t.J.Crowder:在Mozilla实现中,我不知道为什么构造函数有原型成员…Array.hasOwnProperty('indexOf'))==是的;
…你不觉得很奇怪吗?@CMS:是的。文档中没有提到。我仍然会检查原型。:-(刚刚验证过;Firefox两者都有。)@t.J.Crowder:是的,我也找不到任何文档,看起来像是“Mozilla扩展”,我不确定他们为什么这么做……如果(!Array.prototype.indexOf){
?我很确定Array
(构造函数)上从来没有indexOf
。谢谢你的链接。我不知道这个。@t.J.Crowder:在Mozilla实现中,我不确定构造函数为什么有原型成员…Array.hasOwnProperty('indexOf'))==是的;
…你不觉得很奇怪吗?@CMS:是的。文档中没有提到。我仍然会检查原型。:-(刚刚验证过;Firefox两者都有。)@t.J.Crowder:是的,我也找不到任何文档,看起来像是“Mozilla扩展”,我不确定他们为什么这么做。。。