Rising Sun

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            148 隨筆 :: 0 文章 :: 22 評論 :: 0 Trackbacks

          function delRepeat(arr){
           var len = arr.length;
           for(var i=len-1;i>=1;i--)
           {       
           if(arr[i-1] == arr[i])    
              {         
             arr.splice(i,1);//splice()方法的應用   
               } 
             }
           //return arr;
          }

          Array.prototype.delRepeat=function()
          {
          var tmpArr=[],rs=[],i,val;
          for(i=this.length;i>0;i--)
          {
          val = this[i-1];
          if(!tmpArr[val])
          {
          tmpArr[val]=1;
          }else
          {
          rs.push(val);
          this.splice(i-1,1);
          }
          }
          tmpArr = null;
          return rs;
          }

          兩個優點:
          1、預先將this[i-1]保存在變量val中,減少訪問次數。
          2、使用array.push方法,替換用變量保存數組長度的辦法。



          JavaScript splice() 方法
          返回 JavaScript Array 對象參考手冊
          定義和用法
          splice() 方法用于插入、刪除或替換數組的元素。

          語法
          arrayObject.splice(index,howmany,element1,..,elementX)參數 描述 
          index 必需。規定從何處添加
          /刪除元素。

          該參數是開始插入和(或)刪除的數組元素的下標,必須是數字。
           
          howmany 必需。規定應該刪除多少元素。必須是數字,但可以是 
          "0"

          如果未規定此參數,則刪除從 index 開始到原數組結尾的所有元素。
           
          element1 可選。規定要添加到數組的新元素。從 index 所指的下標處開始插入。 
          elementX 可選。可向數組添加若干元素。 

          返回值
          如果從 arrayObject 中刪除了元素,則返回的是含有被刪除的元素的數組。

          說明
          splice() 方法可刪除從 index 處開始的零個或多個元素,并且用參數列表中聲明的一個或多個值來替換那些被刪除的元素。
          提示和注釋
          注釋:請注意,splice() 方法與 slice() 方法的作用是不同的,splice() 方法會直接對數組進行修改。
          實例
          例子 
          1
          在本例中,我們將創建一個新數組,并向其添加一個元素:

          <script type="text/javascript">

          var arr = new Array(6)
          arr[
          0= "George"
          arr[
          1= "John"
          arr[
          2= "Thomas"
          arr[
          3= "James"
          arr[
          4= "Adrew"
          arr[
          5= "Martin"

          document.write(arr 
          + "<br />")
          arr.splice(
          2,0,"William")
          document.write(arr 
          + "<br />")

          </script>輸出:

          George,John,Thomas,James,Adrew,Martin
          George,John,William,Thomas,James,Adrew,Martin例子 
          2
          在本例中我們將刪除位于 index 
          2 的元素,并添加一個新元素來替代被刪除的元素:

          <script type="text/javascript">

          var arr = new Array(6)
          arr[
          0= "George"
          arr[
          1= "John"
          arr[
          2= "Thomas"
          arr[
          3= "James"
          arr[
          4= "Adrew"
          arr[
          5= "Martin"

          document.write(arr 
          + "<br />")
          arr.splice(
          2,1,"William")
          document.write(arr)

          </script>輸出:

          George,John,Thomas,James,Adrew,MartinGeorge,John,William,James,Adrew,Martin例子 
          3
          在本例中我們將刪除從 index 
          2 ("Thomas") 開始的三個元素,并添加一個新元素 ("William") 來替代被刪除的元素:

          <script type="text/javascript">

          var arr = new Array(6)
          arr[
          0= "George"
          arr[
          1= "John"
          arr[
          2= "Thomas"
          arr[
          3= "James"
          arr[
          4= "Adrew"
          arr[
          5= "Martin"

          document.write(arr 
          + "<br />")
          arr.splice(
          2,3,"William")
          document.write(arr)

          </script>輸出:

          George,John,Thomas,James,Adrew,MartinGeorge,John,William,MartinTIY
          splice() 
          如何使用 splice() 來更改數組。 
          posted on 2008-11-19 20:00 brock 閱讀(321) 評論(0)  編輯  收藏 所屬分類: javascript
          主站蜘蛛池模板: 湟源县| 徐水县| 临西县| 光泽县| 东乌珠穆沁旗| 巍山| 永川市| 左权县| 东方市| 勃利县| 永德县| 南投市| 兴隆县| 龙江县| 西丰县| 阿拉善右旗| 宾阳县| 龙门县| 黄浦区| 唐山市| 临西县| 桃园市| 礼泉县| 南丰县| 彩票| 景洪市| 霍山县| 拉萨市| 龙川县| 邵武市| 兴仁县| 滁州市| 长顺县| 南京市| 新化县| 云南省| 普安县| 拉孜县| 达日县| 英吉沙县| 福安市|