最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

老生常談JavaScript 數(shù)組方法

 更新時間:2025年03月04日 10:18:34   作者:Drunken_moon  
本文詳細介紹了JavaScript數(shù)組方法的分類和具體用法,涵蓋了數(shù)組的添加/刪除、查找/訪問、遍歷、排序/反轉(zhuǎn)、轉(zhuǎn)換以及一些其他實用方法,每種方法都提供了簡要的解釋和示例代碼,幫助讀者更好地理解和應(yīng)用這些方法,感興趣的朋友一起看看吧

1. 數(shù)組方法的分類

JavaScript 數(shù)組方法可以大致分為以下幾類:

  • 添加/刪除元素:push(),pop(),shift(),unshift(),splice()
  • 查找/訪問元素:indexOf(),lastIndexOf(),find(),findIndex()
  • 遍歷數(shù)組:forEach(),map(),filter(),reduce()
  • 排序/反轉(zhuǎn):sort(),reverse()
  • 數(shù)組轉(zhuǎn)換:join(),toString(),slice(),concat()
  • 其他實用方法:includes(),fill(),flat(),flatMap()

2. 添加和刪除元素

2.1 ??push():向數(shù)組末尾添加元素

push() 方法用于向數(shù)組末尾添加一個或多個元素,并返回新數(shù)組的長度。

let arr = [1, 2, 3];
arr.push(4, 5); // 向數(shù)組末尾添加 4 和 5
console.log(arr); // [1, 2, 3, 4, 5]

2.2 ??pop():移除數(shù)組末尾的元素

pop() 方法用于移除數(shù)組末尾的元素,并返回被移除的元素。

let arr = [1, 2, 3, 4];
let removed = arr.pop(); // 移除數(shù)組末尾的 4
console.log(arr); // [1, 2, 3]
console.log(removed); // 4

2.3 shift():移除數(shù)組第一個元素

shift() 方法用于移除數(shù)組第一個元素,并返回被移除的元素。

let arr = [1, 2, 3, 4];
let removed = arr.shift(); // 移除數(shù)組第一個元素 1
console.log(arr); // [2, 3, 4]
console.log(removed); // 1

2.4 unshift():向數(shù)組開頭添加元素

unshift() 方法用于向數(shù)組開頭添加一個或多個元素,并返回新數(shù)組的長度。

let arr = [2, 3, 4];
arr.unshift(1, 0); // 向數(shù)組開頭添加 1 和 0
console.log(arr); // [0, 1, 2, 3, 4]

2.5 ??splice():從數(shù)組中添加或刪除元素

splice() 方法功能強大,可以用于添加、刪除或替換數(shù)組中的元素。

let arr = [1, 2, 3, 4, 5];
arr.splice(2, 1, "a", "b"); // 從索引 2 開始,刪除 1 個元素,插入 "a" 和 "b"
console.log(arr); // [1, 2, "a", "b", 4, 5]

3. 查找和訪問元素

3.1 ??indexOf():查找元素的索引

indexOf() 方法返回指定元素在數(shù)組中的第一個索引,如果不存在則返回 -1。

let arr = [1, 2, 3, 4, 5];
let index = arr.indexOf(3); // 查找 3 的索引
console.log(index); // 2

3.2 lastIndexOf():查找元素的最后一個索引

lastIndexOf() 方法返回指定元素在數(shù)組中的最后一個索引,如果不存在則返回 -1。

let arr = [1, 2, 3, 2, 4];
let index = arr.lastIndexOf(2); // 查找 2 的最后一個索引
console.log(index); // 3

3.3 ??find():查找滿足條件的第一個元素

find() 方法返回數(shù)組中滿足條件的第一個元素。

let arr = [1, 2, 3, 4, 5];
let result = arr.find(item => item > 3); // 查找第一個大于 3 的元素
console.log(result); // 4

3.4 ??findIndex():查找滿足條件的第一個元素的索引

findIndex() 方法返回數(shù)組中滿足條件的第一個元素的索引。

let arr = [1, 2, 3, 4, 5];
let index = arr.findIndex(item => item > 3); // 查找第一個大于 3 的元素的索引
console.log(index); // 3

4. 遍歷數(shù)組

4.1 ??forEach():遍歷數(shù)組并執(zhí)行回調(diào)函數(shù)

forEach() 方法對數(shù)組中的每個元素執(zhí)行一次回調(diào)函數(shù)。

let arr = [1, 2, 3, 4, 5];
arr.forEach(item => {
  console.log(item);
});
// 輸出:
// 1
// 2
// 3
// 4
// 5

4.2 ??map():創(chuàng)建一個新數(shù)組,每個元素經(jīng)過回調(diào)函數(shù)處理

map() 方法對數(shù)組中的每個元素執(zhí)行回調(diào)函數(shù),并返回一個新數(shù)組。

let arr = [1, 2, 3, 4, 5];
let newArr = arr.map(item => item * 2); // 每個元素乘以 2
console.log(newArr); // [2, 4, 6, 8, 10]

4.3 ??filter():創(chuàng)建一個新數(shù)組,包含滿足條件的元素

filter() 方法返回一個新數(shù)組,包含所有滿足條件的元素。

let arr = [1, 2, 3, 4, 5];
let newArr = arr.filter(item => item > 3); // 篩選大于 3 的元素
console.log(newArr); // [4, 5]

4.4 ??reduce():將數(shù)組中的值累積處理,返回一個單一的結(jié)果

reduce() 方法對數(shù)組中的每個元素執(zhí)行回調(diào)函數(shù),并將結(jié)果累積到一個單一的輸出值。

let arr = [1, 2, 3, 4, 5];
let sum = arr.reduce((acc, curr) => acc + curr, 0); // 計算數(shù)組元素的總和
console.log(sum); // 15

5. 排序和反轉(zhuǎn)

5.1 ??sort():對數(shù)組元素進行排序

sort() 方法對數(shù)組中的元素進行排序,默認按字符串順序排序。

let arr = [3, 1, 4, 2];
arr.sort(); // 默認按字符串順序排序
console.log(arr); // [1, 2, 3, 4]
// 如果需要按數(shù)字順序排序,需要傳入比較函數(shù):
arr.sort((a, b) => a - b);
console.log(arr); // [1, 2, 3, 4]

5.2 reverse():反轉(zhuǎn)數(shù)組中元素的順序

reverse() 方法反轉(zhuǎn)數(shù)組中元素的順序。

let arr = [1, 2, 3, 4, 5];
arr.reverse(); // 反轉(zhuǎn)數(shù)組
console.log(arr); // [5, 4, 3, 2, 1]

6. 數(shù)組轉(zhuǎn)換

6.1 join():將數(shù)組元素連接成一個字符串

join() 方法將數(shù)組中的元素連接成一個字符串,默認用逗號分隔。

let arr = [1, 2, 3, 4, 5];
let str = arr.join(", "); // 用逗號和空格分隔
console.log(str); // "1, 2, 3, 4, 5"

6.2 toString():將數(shù)組轉(zhuǎn)換為字符串

toString() 方法將數(shù)組轉(zhuǎn)換為字符串,默認用逗號分隔。

let arr = [1, 2, 3, 4, 5];
let str = arr.toString(); // 轉(zhuǎn)換為字符串
console.log(str); // "1,2,3,4,5"

6.3 slice():返回數(shù)組的一個淺拷貝

slice() 方法返回數(shù)組的一個淺拷貝,不修改原數(shù)組。

let arr = [1, 2, 3, 4, 5];
let newArr = arr.slice(1, 4); // 從索引 1 到 4(不包括 4)
console.log(newArr); // [2, 3, 4]

6.4 concat():合并兩個或多個數(shù)組

concat() 方法用于合并兩個或多個數(shù)組,返回一個新數(shù)組。

let arr1 = [1, 2, 3];
let arr2 = [4, 5, 6];
let newArr = arr1.concat(arr2); // 合并數(shù)組
console.log(newArr); // [1, 2, 3, 4, 5, 6]

7. 其他實用方法

7.1 ??includes():檢查數(shù)組是否包含某個值

includes() 方法用于檢查數(shù)組是否包含某個值,返回布爾值。

let arr = [1, 2, 3, 4, 5];
let hasThree = arr.includes(3); // 檢查是否包含 3
console.log(hasThree); // true

7.2 fill():用一個固定值填充數(shù)組的指定部分

fill() 方法用一個固定值填充數(shù)組的指定部分。

let arr = [1, 2, 3, 4, 5];
arr.fill(0, 1, 4); // 從索引 1 到 4 填充 0
console.log(arr); // [1, 0, 0, 0, 5]

7.3 flat():將多維數(shù)組扁平化為一維數(shù)組

flat() 方法將多維數(shù)組扁平化為一維數(shù)組。

let arr = [1, [2, [3, 4]]];
let newArr = arr.flat(2); // 深度為 2 的扁平化
console.log(newArr); // [1, 2, 3, 4]

7.4 flatMap():扁平化數(shù)組并映射

flatMap() 方法先對數(shù)組中的每個元素執(zhí)行回調(diào)函數(shù),然后將結(jié)果扁平化為一維數(shù)組。

let arr = [1, 2, 3];
let newArr = arr.flatMap(item => [item, item * 2]); // 每個元素映射為兩個值
console.log(newArr); // [1, 2, 2, 4, 3, 6]

到此這篇關(guān)于老生常談JavaScript 數(shù)組方法的文章就介紹到這了,更多相關(guān)JavaScript 數(shù)組方法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • JavaScript手寫數(shù)組的常用函數(shù)總結(jié)

    JavaScript手寫數(shù)組的常用函數(shù)總結(jié)

    這篇文章主要給大家介紹了關(guān)于JavaScript手寫數(shù)組常用函數(shù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-11-11
  • 詳解JS轉(zhuǎn)換數(shù)值函數(shù)Number()、parseInt()、parseFloat()

    詳解JS轉(zhuǎn)換數(shù)值函數(shù)Number()、parseInt()、parseFloat()

    JS中有三種函數(shù)可以將非數(shù)值轉(zhuǎn)換成數(shù)值:Number()、parseInt()和parseFloat()。接下來通過本文詳細的給大家介紹JS轉(zhuǎn)換數(shù)值函數(shù)Number()、parseInt()、parseFloat()的實例代碼,感興趣的朋友一起看看吧
    2018-08-08
  • JS實現(xiàn)簡單路由器功能的方法

    JS實現(xiàn)簡單路由器功能的方法

    這篇文章主要介紹了JS實現(xiàn)簡單路由器功能的方法,基于javascript模擬簡單路由編碼的相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • moment.js輕松實現(xiàn)獲取當前日期是當年的第幾周

    moment.js輕松實現(xiàn)獲取當前日期是當年的第幾周

    這篇文章主要介紹了moment.js輕松實現(xiàn)獲取當前日期是當年的第幾周,需要的朋友可以參考下
    2015-02-02
  • JavaScript利用BigNumber處理高精度的數(shù)字運算

    JavaScript利用BigNumber處理高精度的數(shù)字運算

    BigNumber.js?是一個?JavaScript?庫,用于處理高精度的數(shù)字運算,它解決了?JavaScript?原生?Number?類型在處理大數(shù)或高精度計算時的局限性,下面我們來看看它的具體應(yīng)用吧
    2025-05-05
  • javascript控制臺詳解

    javascript控制臺詳解

    本文是寫在2011年,主要介紹 “Firefox” 瀏覽器插件 “Firebug” 的操作,如今主流瀏覽器對控制臺都已經(jīng)提供了很好的支持。我自己用的最多是谷歌的 “chrome” 瀏覽器,下面也用 “chrome” 瀏覽器來調(diào)試。
    2015-06-06
  • 鼠標滾輪改變圖片大小的示例代碼

    鼠標滾輪改變圖片大小的示例代碼

    這篇文章主要是對用鼠標滾輪改變圖片大小的示例代碼進行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2013-11-11
  • 淺談Javascript中的12種DOM節(jié)點類型

    淺談Javascript中的12種DOM節(jié)點類型

    DOM是javascript操作網(wǎng)頁的接口,全稱為文檔對象模型(Document Object Model)。本文將主要說明DOM節(jié)點類型,有需要的可以參考借鑒。
    2016-08-08
  • js 鼠標事件的抓取

    js 鼠標事件的抓取

    鼠標事件的抓取實現(xiàn)代碼,需要的朋友可以參考下。
    2010-04-04
  • 輕松實現(xiàn)JavaScript圖片切換

    輕松實現(xiàn)JavaScript圖片切換

    這篇文章主要幫助大家輕松實現(xiàn)JavaScript圖片切換,內(nèi)容很精簡,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-01-01

最新評論

石景山区| 鄱阳县| 栾城县| 右玉县| 罗定市| 通化市| 温泉县| 五河县| 马尔康县| 镇宁| 邓州市| 鸡泽县| 澎湖县| 黄大仙区| 武川县| 永嘉县| 虞城县| 尉氏县| 江津市| 浏阳市| 平潭县| 静乐县| 南丹县| 永嘉县| 化隆| 田林县| 睢宁县| 弥勒县| 准格尔旗| 东光县| 嘉禾县| 香港| 襄城县| 阜城县| 云霄县| 辛集市| 汉川市| 黔南| 盐山县| 铜陵市| 惠安县|