用html写的程序,把数组中的成员反序输出,但是总是出现undefined,哪个地方写错了?程序在下面
<script type="text/javascript">
    
    function mymethod(names){
    for(var i=0;i<names.length /2;i++){
    var tempt=names[i];
    names[i]=names[names.length -i-1];
    names[names.length -i-1]=tempt;
    }
    }    var names=new Array();
    names[0]="aaa";
    names[1]="bbb";
    names[2]="ccc";
    names[3]="ddd";
    
    alert(names);
    alert(mymethod(names));    </script>

解决方案 »

  1.   

    本帖最后由 net_lover 于 2011-12-10 16:20:11 编辑
      

  2.   

    原生 JavaScript 的 Array 对象本身就有一个反序的方法 Array.reverse(),干嘛还要自己写方法。
      

  3.   

    有标准方法为啥要自己写?
      var names=new Array();
      names[0]="aaa";
      names[1]="bbb";
      names[2]="ccc";
      names[3]="ddd";
       
      alert(names);
      alert(names.reverse());
      

  4.   

     var names=new Array();
      names[0]="aaa";
      names[1]="bbb";
      names[2]="ccc";
      names[3]="ddd";
    var _names=new Array();
    var j = 0;
    for(var i = names.length;i>=0;i--)
    {
      _names[j]=names[i];
    j++;
    }
    alert(_names);
      

  5.   

    下面的不能改,没法,只能重发了var names=new Array(); 
    names[0]="aaa"; 
    names[1]="bbb"; 
    names[2]="ccc"; 
    names[3]="ddd"; 
    var _names=new Array(); 
    var j = 0;
     for(var i = names.length-1;i>=0;i--) 
    {
     _names[j]=names[i];
     j++; 
    }
    alert(_names);