javascript 中 slice 和 splice 的區別如下:slice() 返回數組的新拷貝,不會改變原始數組;而 splice() 會修改原始數組。slice() 的語法為 slice(start, end),splice() 的語法為 splice(start, deletecount, …items)。slice() 從指定位置開始復制元素,splice() 從指定位置開始移除或替換元素。
JS 中 slice 與 splice 的區別
開門見山
slice()
和 splice()
是 JavaScript 中用于操作數組的兩個方法,但它們的功能不同。
詳細展開
slice()
返回數組的一份淺拷貝(新數組)。
不會修改原始數組。
語法:slice(start[, end])
參數:
start
: 必選,從該索引開始復制元素。
end
: 可選,復制到該索引(不包括)。
例子:
<code class="js">const arr = [1, 2, 3, 4, 5]; const newArr = arr.slice(2); // [3, 4, 5]</code>
登錄后復制
splice()
從數組中移除或替換元素,并返回被移除的元素。
會修改原始數組。
語法:splice(start, deleteCount[, ...items])
參數:
start
: 必選,從該索引開始移除元素。
deleteCount
: 必選,要移除的元素數量。
...items
: 可選,插入到 start
索引處的元素(如果指定)。
例子:
<code class="js">const arr = [1, 2, 3, 4, 5]; arr.splice(2, 2, 10, 11); // [1, 2, 10, 11, 5]</code>
登錄后復制
總結
slice() 返回數組的淺拷貝,不會修改原始數組。
splice() 從數組中移除或替換元素,會修改原始數組。