在js中有一个整型数组var arr=new Array(2,9,5,2,3);如何取得这个数组中相同元素的下标?

解决方案 »

  1.   

    I'm sorry 是相同,不是"系统"
      

  2.   


    var arr = new Array(2, 9, 5, 2, 3);
        for (var i = 0; i < arr.length; i++) {
            for(var j=i+1;j<arr.length;j++){
                if(arr[i]==arr[j])
                {
                    alert(i);alert(j);
    }

        }写了个。。不知道对不对。。楼主试试吧
      

  3.   

    <script type="text/javascript">
    var arr=new Array(2,9,5,2,3);
    var a=[];
    for(var i=0;i<arr.length;i++){
    if(a[arr[i]]==undefined){
    a[arr[i]]=i;
    }else{
    a[arr[i]]+=(","+i);
    }
    }
    for(var i in a){
    document.write("元素为"+i+"的下标为"+a[i]+"<br/>");
    }
    </script>
    这样试试
      

  4.   

    简单遍历吧,随便给你写一个:<html><head><title>test</title><script> var arr = new Array(2,9,5,2,3);

    function SameOut(){  var key;

     var output = "数组元素相同的有:"  var i = 0;  while(i<=arr.length){
          
          key = arr[i];       for(k=i+1;k<=arr.length;k++){
          
     if(key==arr[k]){    output = output + "下标为" + i + "和下标为" + k + "//";  }              }       i++; }
    document.write(output); }</script></head><body> <input type="button" value="TryOut" onclick="SameOut();"/></body></html>