slice 用于提取數(shù)組副本,而不修改原始數(shù)組,它返回指定索引范圍內(nèi)的元素。而 splice 用于修改數(shù)組,它從指定索引處移除元素,并可以插入新元素,返回被移除的元素組成的數(shù)組。
JavaScript 中 Slice 和 Splice 的區(qū)別
Slice 和 Splice 都是 JavaScript 數(shù)組方法,用于從數(shù)組中提取或修改元素。它們具有不同的功能和用法:
slice()
目的:提取數(shù)組的副本。
語法:`
js
arr.slice(start, end)
參數(shù):
start
:開始提取的索引(包含)。
end
:結(jié)束提取的索引(不包含)。
返回值:原始數(shù)組的副本,包含指定索引范圍內(nèi)的元素。
splice()
目的:修改數(shù)組。
語法:`
js
arr.splice(index, count, …items)
參數(shù):
index
:開始修改的索引。
count
:要移除的元素數(shù)量(可選)。
...items
:要插入到索引處的新元素(可選)。
返回值:被移除的元素組成的數(shù)組。
主要區(qū)別:
目的:slice() 是一個提取器,而 splice() 是一個修改器。
返回值:slice() 返回一個副本,而 splice() 返回一個包含移除元素的數(shù)組。
修改數(shù)組:slice() 不修改原始數(shù)組,而 splice() 會永久修改它。
示例:
<code class="js">// 使用 slice() 提取元素 const originalArr = [1, 2, 3, 4, 5]; const copiedArr = originalArr.slice(1, 3); // [2, 3] // 使用 splice() 修改數(shù)組 const modifiedArr = originalArr.splice(2, 1, 7); // [1, 2, 7, 4, 5]</code>
登錄后復(fù)制