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