var n = parseInt(Math.random()*a.length) ;
a.splice(n,1)

解决方案 »

  1.   


    2008 年 05 月 22 日, 10 时 10 分 13 秒 531 毫秒var Ar = [1, 2, 3, 4];defaultStatus = 
    fDeleteArrayItem(Ar, 2);function fDeleteArrayItem(XArray, iDel)
    {/* shawl.qiu code, return array */
      var ArLen = XArray.length, Ar = [];
      if(iDel<0||iDel>=ArLen) return XArray;
      if(iDel===0) {XArray.shift(); return XArray};
      if(iDel===ArLen-1) {XArray.pop(); return XArray};
      
      Ar = XArray.slice(0, iDel);
      Ar = Ar.concat(XArray.slice(iDel+1));
      return Ar;
    }/* function fDeleteArrayItem(XArray, iDel) */
    2008 年 05 月 22 日, 10 时 08 分 19 秒 515 毫秒
    <script type="text/javascript">
    /*<![CDATA[*/
     var Ar = [0, 1, 2, 3];
     
     document.write("Ar: ", Ar, "<hr/>");
     
     document.write("fInsertToArray(Ar, 'insert 0', 0): ", "<br/>");
     Ar = fInsertToArray(Ar, 'insert 0', 0);
     document.write("Ar: ", Ar, "<hr/>")
     
     document.write("fInsertToArray(Ar, 'insert 4', 4): ", "<br/>");
     Ar = fInsertToArray(Ar, 'insert 4', 4);
     document.write("Ar: ", Ar, "<hr/>")
     
     document.write("fInsertToArray(Ar, 'insert 2', 2): ", "<br/>");
     Ar = fInsertToArray(Ar, 'insert 2', 2);
     document.write("Ar: ", Ar, "<hr/>")
     
     function fInsertToArray(Ar, Value, iIndex)
     { // shawl.qiu code : return array
      var Len = Ar.length-1;
      if(iIndex>=Len) Ar.push(Value);
      else if(iIndex<=0) Ar.unshift(Value);
      else
      {
       Ar = Ar.slice(0, iIndex).concat(Value).concat(Ar.slice(iIndex));
      }
      
      return Ar;
     } // end function fInsertToArray(Ar, Value, iIndex)
    /*]]*/
    </script>