1. 程式人生 > >js中陣列插入、刪除元素操作

js中陣列插入、刪除元素操作

/*
    *  刪除陣列元素:Array.removeArr(index)
    */
    Array.prototype.removeArr = function (index) {
        if (isNaN(index) || index>= this.length) { return false; }
        this.splice(index, 1);
    }
    /*
    *  插入陣列元素:Array.insertArr(dx)
    */
    Array.prototype.insertArr = function (index, item) {
        this.splice(index, 0, item);
    };

通過上面的函式,可以處理上移和下移的動作

if (tag == 2) { //上移
            if (targeitemindex == 0) return; //頂部
            rows.removeArr(targeitemindex); //移除指定物件,原物件長度減少一個
            rows.insertArr(targeitemindex - 1, targetitem);
        } else if (tag == 3) { //下移
            if (targeitemindex == len - 1) return; //底部
            rows.removeArr(targeitemindex); //移除指定物件,原物件長度減少一個
            rows.insertArr(targeitemindex + 1, targetitem);
        }

定義和用法

splice() 方法向/從陣列中新增/刪除專案,然後返回被刪除的專案。

註釋:該方法會改變原始陣列。

語法

arrayObject.splice(index,howmany,item1,.....,itemX)
引數 描述
index 必需。整數,規定新增/刪除專案的位置,使用負數可從陣列結尾處規定位置。
howmany 必需。要刪除的專案數量。如果設定為 0,則不會刪除專案。
item1, ..., itemX 可選。向陣列新增的新專案。

返回值

型別 描述
Array 包含被刪除專案的新陣列,如果有的話。

說明

splice() 方法可刪除從 index 處開始的零個或多個元素,並且用引數列表中宣告的一個或多個值來替換那些被刪除的元素。

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