1可以利用遍历数组的方式
但是这种方式数组中如果有重复数据
那么就会得到多个下标
2可以利用元素的地址,计算下标
3我还没想到
你可以给个例子
我好说
function searchKeys(needle, haystack)
{
var result = [];
for (i in haystack)
{
if (haystack[i] == needle)
{
resultpush(i);
}
}
return result;
}
var array = [1,2,1,3,1,4,1,5,1,1];
var val = 1;
var result = searchKeys(val, array);
alert(result);
这里写了一个方法,第一个参数是所要求果的值,第二个参数是对应的数组,函数返回的结果就是在这个数组中有相同元素的坐标。
上面是已知元素进行查找,下面这个是对数组所有元素进行查找
var arr = ['1', '2', '3', '4', '5', '6', '6', '7', '8', '1', '1', '1'];var list = [];
for (var i = 0; i < arrlength; i++)
{
var hasRead = false;
for (var k = 0; k < listlength; k++)
{
if (i == list[k])
{
hasRead = true;
}
}
if (hasRead) { break;}
var _index = i, haveSame = false;
for (var j = i + 1; j < arrlength; j++)
{
if (arr[i] ==arr[j])
{
listpush(j);
_index += "," + j;
haveSame = true;
}
}
if (haveSame)
{
alert("数组中值为"+arr[i]+"相同元素的下标为"+_index);
}
}
这个是对所有的数组元素遍历,查出所有的相同的元素以及下标
foreach和for循环类似的,使用foreach的好处是,当遍历数组时,因为有些语言的起始位置是从0开始的,而有些语言的起始位置却使从1开始,当语言支持foreach语法时,使用了foreach,它就自动帮你从数组第一位开始遍历,而不用你管第一位的下标是0还是1。而使用for来遍历的话,你还要确定该语言对数组的定义是下标1开始还是下标0开始。
以上就是关于如何由数组元素得到下标全部的内容,包括:如何由数组元素得到下标、js中如何取得数组中相同元素的下标、如何用foreach语句中获取数组元素的下标等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)