成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

15個(gè)你應(yīng)該知道的JavaScript的重要數(shù)組方法

開發(fā) 前端
我們會(huì)在構(gòu)建的每個(gè)應(yīng)用程序中使用數(shù)組。它有幾種方法,其中一些非常令人困惑。我列出了 15 種,我們應(yīng)該掌握的數(shù)組方法,因?yàn)樗鼈兘?jīng)常派上用場。

數(shù)組方法的重要一點(diǎn)是有些是可變的,有些是不可變的。在決定針對特定問題使用哪種方法時(shí),務(wù)必牢記這一點(diǎn)。

此列表中的大多數(shù)數(shù)組方法都采用類似的回調(diào)作為參數(shù)。第一個(gè)參數(shù)是當(dāng)前項(xiàng),第二個(gè)參數(shù)是索引,第三個(gè)是整個(gè)數(shù)組。現(xiàn)在我們已經(jīng)解決了這個(gè)問題,讓我們從列表開始:

1、ForEach

循環(huán)遍歷數(shù)組中的每個(gè)元素并執(zhí)行回調(diào)函數(shù)。

const arr = [1, 2, 3];
arr.forEach(num => console.log(num));
// Console: 1, 2, 3

2、Map

循環(huán)遍歷數(shù)組中的每個(gè)元素并執(zhí)行回調(diào)函數(shù)。使用回調(diào)函數(shù)的返回值創(chuàng)建一個(gè)新數(shù)組。

const arr = [1, 2, 3, 4, 5];
const areEven = arr.map(num => num % 2 === 0);
console.log(areEven); // Console: [false, true, false, true, false]

3、Filter

循環(huán)遍歷數(shù)組中的每個(gè)元素,并僅選擇符合條件的元素。根據(jù)所選元素返回一個(gè)新數(shù)組。

const arr = [1, 2, 3, 4, 5];
const evenNumbers = arr.filter(num => num % 2 === 0);
console.log(evenNumbers); // Console [2, 4]

4、Find

查找數(shù)組中滿足條件的第一個(gè)元素。如果沒有找到,將返回 undefined。

const arr = [1, 2, 3, 4, 5];
const firstEvenNumber = arr.find(num => num % 2 === 0);
console.log(firstEvenNumber); // Console [2]

5、FindIndex

與前面的方法類似,它返回滿足給定條件的第一個(gè)元素的索引。如果沒有找到,則返回 -1。

const arr = [1, 2, 3, 4, 5];
const firstEvenNumberIdx = arr.findIndex(num => num % 2 === 0);
console.log(firstEvenNumberIdx);

6、Reduce

這是一種高級方法,可用于組合數(shù)組的元素。主要區(qū)別在于回調(diào)將累加器作為第一個(gè)參數(shù)。回調(diào)的返回值成為下一次迭代的累加器。

const arr = [1, 2, 3, 4, 5];
// `acc` is the value of the accumulator
// the acccumulator is return value of the previous callback
// the second argument i.e `0` is the default value
const sum = arr.reduce((acc, num) => acc + num, 0);
console.log(sum); // Console: 15

7、Every

此方法接受一個(gè)返回布爾值的回調(diào)。如果條件對數(shù)組中的所有元素都有效,那么 Every() 將返回 true。

const arr = [1, 2, 3, 4, 5];
const areAllEven = arr.every(num => num % 2 === 0);
console.log(areAllEven); // Console: false

8、Some

像前面的方法一樣,這個(gè)方法也接受一個(gè)返回布爾值的回調(diào)。如果條件對至少一個(gè)元素有效,Some() 將返回 true。

const arr = [1, 2, 3, 4, 5];
const isOneEven = arr.some(num % 2 === 0);
console.log(isOneEven); // true

9、 Sort

這是一種用于對數(shù)組中的元素進(jìn)行排序的方法。

默認(rèn)情況下,它按升序?qū)?shù)組進(jìn)行排序。它需要一個(gè)回調(diào)函數(shù),有兩個(gè)元素——a 和 b。如果 a 小于 b,則返回 -1,否則返回 1。

如果它們相等,則返回 0。

const arr = [1, 2, 3, 4, 5];
const descendingArr = arr.sort((a, b) => b - a);
console.log(descendingArr);

請記住,與其他數(shù)組方法不同,sort 會(huì)改變數(shù)組。

10、Flat

Flat 用于將嵌套數(shù)組展平為單個(gè)數(shù)組。您可以指定將數(shù)組展平的深度。

const arr = [[[1, 2], [3]], [4, 5]];
const flattenedArr = arr.flat(4);
console.log(flattenedArr); // Console [1, 2, 3, 4, 5]

11、 Reverse

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

const arr = [1, 2, 3, 4, 5];
const reversedArr = arr.reverse();
console.log(reversedArr); // Console [5, 4, 3, 2, 1]

12、Include

如果數(shù)組中存在元素,則此方法返回 true。

const arr = [1, 2, 3, 4, 5];
console.log(arr.includes(5)); // true
console.log(arr.includes(10)); // false

13、Fill

fill 方法將數(shù)組的元素設(shè)置為給定值。當(dāng)我想使用 map/forEach 方法特定次數(shù)時(shí),我喜歡使用此方法。

const emptyArr = new Array(5);
// The problem with this is that you get `[empty x 10]`
// You need real values to map over it.
const filledArr = emptyArr.fill(3); // Console [3, 3, 3, 3, 3]

14、At

此方法返回給定索引的元素。這與訪問(即 arr[1])元素的傳統(tǒng)方式之間的區(qū)別在于它也支持負(fù)索引。

const arr = [1, 2, 3, 4, 5];
console.log(arr.at(1)); // 2
console.log(arr.at(-1)); // 5
// Important: Negative indices start from `1`, positive indices start from `0`.

15、 Concat

此方法用于組合兩個(gè)數(shù)組。
const arr1 = [1, 2, 3, 4, 5];
const arr2 = [6, 7, 8, 9, 10];
console.log(arr1.concat(arr2)); // Console [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

總結(jié)

以上就是我今天跟大家分享的15個(gè)關(guān)于JavaScript的重要數(shù)組的方法。

希望對你有幫助,如果你喜歡它的話,請記得分享給你身邊做開發(fā)的朋友。

最后,感謝你的閱讀,祝編程愉快!

責(zé)任編輯:龐桂玉 來源: web前端開發(fā)
相關(guān)推薦

2020-03-19 15:30:08

JavaScript數(shù)組字符串

2022-09-27 14:36:57

JavaScrip數(shù)組開發(fā)

2023-07-04 15:52:49

JavaScript數(shù)組

2022-10-10 23:14:40

JavaScrip對象屬性

2022-10-18 16:35:51

JavaScrip數(shù)組參數(shù)

2022-08-10 12:02:52

面試JavaScript

2022-11-13 15:33:30

JavaScript數(shù)組開發(fā)

2024-11-12 14:56:07

2017-07-24 14:59:31

ERP軟件連續(xù)性

2023-05-08 16:06:33

2022-04-18 12:42:44

Linux

2024-08-29 16:45:46

2023-12-05 08:02:51

JavaScript字符串功能

2020-04-03 19:21:59

JavaScript編程語言開發(fā)

2022-05-06 12:03:16

數(shù)組Javascript

2018-10-17 09:00:00

JavaScript工具前端

2022-11-23 16:12:57

JavaScript數(shù)據(jù)類型數(shù)組

2019-08-13 16:23:19

JavaScript數(shù)組方法

2023-02-01 08:31:48

2024-03-21 14:27:13

JavaScript數(shù)組
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 国产高清一区二区三区 | 久久久夜 | 久久久久久久一区二区三区 | 日韩中文字幕在线观看 | 91不卡在线| 成人在线免费观看视频 | 亚洲成人动漫在线观看 | 久久影音先锋 | 国产精品中文在线 | 欧美激情一区二区三区 | 免费九九视频 | 久久久久久成人 | 激情一区| 亚洲一区二区三区免费视频 | 欧美亚洲第一区 | 免费在线黄 | 成人av看片| 国产成人a亚洲精品 | 少妇一级淫片aaaaaaaaa | 最近中文字幕第一页 | 妞干网av| 成人av播放 | 国产精品99精品久久免费 | 日韩一区二区三区在线观看 | 欧美三级电影在线播放 | 日韩精品av一区二区三区 | 影音先锋欧美资源 | 国产一区二区日韩 | 亚洲精品视频免费 | 国产美女在线播放 | 亚洲视频在线观看 | 久久久久久久一区二区三区 | 96久久久久久 | 四虎在线观看 | 欧美高清视频一区 | 国产韩国精品一区二区三区 | 日本色综合 | 国产成人精品高清久久 | 日韩欧美一级片 | 亚洲一区二区在线视频 | 国产免费一级片 |