1. 程式人生 > >JavaScript方法splice()和slice()

JavaScript方法splice()和slice()

ati 添加項 .com 沒有 fault on() 方法 item http

1 splice()

1.1 說明

splice() 方法向/從數組中添加/刪除項目,然後返回被刪除的項目。該方法會改變原始數組。Link

1.2 語法

arrayObject.splice(index,howmany,item1,.....,itemX)

參數

  • index: 必需。整數,規定添加/刪除項目的位置,使用負數可從數組結尾處規定位置。
  • howmany: 必需。要刪除的項目數量。如果設置為 0,則不會刪除項目。
  • item1, ..., itemX: 可選。向數組添加的新項目。

返回值

  • Array: 包含被刪除項目的新數組,如果有的話。

1.3 示例

//添加項目
(function(){
    var arr = [0, 1, 2, 3, 4];
    arr.splice(1, 0, 9, 10); //索引位置/ 刪除數量/ 可選, 添加項目, 可多個
    console.log(arr); //[0, 9, 10, 1, 2, 3, 4]
}());
//刪除項目
(function(){
    var arr = [0, 1, 2, 3, 4];
    arr.splice(1, 2);
    console.log(arr); //[0, 3, 4]
}());
//刪除並添加項目
(function(){
    var arr = [0, 1, 2, 3, 4];
    arr.splice(1, 2, 9, 10, 11);
    console.log(arr); //[0, 9, 10, 11, 3, 4]
}());

2 slice()

2.1 說明

slice() 方法可從已有的數組中返回選定的元素。該方法並不會修改數組,而是返回一個子數組

2.2 語法

arrayObject.slice(start,end)

參數

  • start: 必需。規定從何處開始選取。如果是負數,那麽它規定從數組尾部開始算起的位置。也就是說,-1 指最後一個元素,-2 指倒數第二個元素,以此類推。
  • end: 可選。規定從何處結束選取。該參數是數組片斷結束處的數組下標。如果沒有指定該參數,那麽切分的數組包含從 start 到數組結束的所有元素。如果這個參數是負數,那麽它規定的是從數組尾部開始算起的元素。

返回值

  • 返回一個新的數組,包含從 start 到 end (不包括該元素)的 arrayObject 中的元素。

2.3 示例

//截取中間一段
(function(){
    var arr = [0, 1, 2, 3, 4];
    arrS = arr.slice(1, 3); //從索引1開始到索引3之前, 不包括索引3的項目
    console.log(arrS); //[1, 2]
}());
//截取中間到最後
(function(){
    var arr = [0, 1, 2, 3, 4];
    arrS = arr.slice(1); //end為空, 從索引1開始到結束
    console.log(arrS); //[1, 2, 3, 4]
}());
//獲取最後一個項目
(function(){
    var arr = [0, 1, 2, 3, 4];
    arrS = arr.slice(-1); // -1個項目到最後, -1即最後一個, -2倒數第二個
    console.log(arrS); //[4]
}());
//排除最後一個項目
(function(){
    var arr = [0, 1, 2, 3, 4];
    arrS = arr.slice(0, -1); // 第一個到第-1個, 不包含第-1個(最後一個)
    console.log(arrS); //[0, 1, 2, 3]
}());

JavaScript方法splice()和slice()

JavaScript方法splice()和slice()