国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

js Array.slice的8種不同用法示例

2024-05-06 15:37:04
字體:
來源:轉載
供稿:網友

前言

JS數組slice方法是JS語言中最強大、最常用的內建函數之一。

隨著React和其他面向功能的JavaScript實踐的興起,它變得越來越重要,原因有兩個:

函數式編程,尤其是高階函數,與數據列表密切配合 函數式編程需要純函數,即不會產生副作用或修改輸入數據的函數

JavaScript 數組slice方法符合這兩個標準。

slice方法可以在不修改原始列表的情況下創建列表子集的淺拷貝。因此,它為編寫函數式 JS 提供了一個關鍵的構建塊。

在這篇文章中,我們將通過實例來掌握slice方法,探索它的8種不同用法。

注意:slice 方法不要與splice方法混淆,splice方法會修改原始數組。

slice 工作原理

在深入研究一些更高級的用法之前,讓我們看一下slice方法的基礎知識。

如MDN文檔,slice 是數組上的一個方法,它最多有兩個參數:

arr.slice([begin[, end]])

begin

從該索引處開始提取原數組中的元素,如果該參數為負數,則表示從原數組中的倒數第幾個元素開始提取,slice(-2)表示提取原數組中的倒數第二個元素到最后一個元素(包含最后一個元素)。
如果省略 begin,則 slice 從索引 0 開始。

end

在該索引處結束提取原數組元素(從0開始)。slice會提取原數組中索引從 begin 到 end 的所有元素(包含begin,但不包含end)。

slice(1,4) 提取原數組中的第二個元素開始直到第四個元素的所有元素 (索引為 1, 2, 3的元素)。

如果該參數為負數, 則它表示在原數組中的倒數第幾個元素結束抽取。 slice(-2,-1)表示抽取了原數組中的倒數第二個元素到最后一個元素(不包含最后一個元素,也就是只有倒數第二個元素)。

如果 end 被省略,則slice 會一直提取到原數組末尾。如果 end 大于數組長度,slice 也會一直提取到原數組末尾。

基本用法

我們的前4個例子突出slice的核心功能。

用法1:簡單的復制

const arr2 = arr.slice

沒有任何參數的slice執行一個簡單的淺拷貝。當前,主流的用法還是使用展開運算符合來實現,但是如果在舊的代碼庫中,或者沒有使用babel的構建步驟,可能仍然希望使用slice。

用法2:獲取從 N 開始的子數組

使用slice方法最簡單的方法就是原始數組從N開始抽取的所有元素。

一種情況是希望彈出數組的第一個元素并使用它,返回剩余的數組,但希望在不修改原始數組的情況下執行此操作。

function useone (arr) { const usedItem = arr[0] return arr.slice(1)}

用法3:獲取從末尾 N 開始的子數組

slice的另一種使用方法是獲取數組的末尾,利用的是負索引從末尾開始計數。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 竹山县| 托克逊县| 临武县| 太仓市| 万荣县| 加查县| 襄城县| 喀什市| 裕民县| 屏东市| 灵丘县| 平武县| 新化县| 宁明县| 三穗县| 泊头市| 浮山县| 荆州市| 泉州市| 酉阳| 巴林左旗| 阳西县| 汨罗市| 白河县| 甘肃省| 吐鲁番市| 金坛市| 阿城市| 和硕县| 东莞市| 井陉县| 抚州市| 磐石市| 新建县| 南京市| 宁远县| 长兴县| 罗城| 吐鲁番市| 松潘县| 郁南县|