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

沒人愿意使用這些數組方法,你會使用嗎?

開發 前端
前端開發中經常使用數組操作,除了常見的 map()、filter()、find()? 和 push() 等方法外,JavaScript還提供了許多強大的數組方法。這篇文章將介紹7個實用但較少被關注的數組方法。

前端開發中經常使用數組操作,除了常見的 map()、filter()、find() 和 push() 等方法外,JavaScript還提供了許多強大的數組方法。這篇文章將介紹7個實用但較少被關注的數組方法。

1. copyWithin(): 數組內部復制

這個方法可以在同一個數組內復制并替換元素,不會改變數組長度。

const numbers = [1, 2, 3, 4, 5];
numbers.copyWithin(0, 3); // [4, 5, 3, 4, 5]

// 指定結束位置
const fruits = ['apple', 'banana', 'orange', 'grape', 'kiwi'];
fruits.copyWithin(2, 0, 2); // ['apple', 'banana', 'apple', 'banana', 'kiwi']

2. at() 和 with(): 現代數組訪問方法

這兩個新方法提供了更優雅的數組元素訪問和修改方式:

const arr = ['a', 'b', 'c'];
// 使用負索引訪問最后一個元素
console.log(arr.at(-1)); // 'c'

// 不改變原數組的情況下修改元素
const newArr = arr.with(1, 'x'); // ['a', 'x', 'c']
console.log(arr); // ['a', 'b', 'c']

3. reduceRight(): 從右向左歸約

與 reduce() 類似,但從數組末尾開始處理:

// 構建嵌套對象
const keys = ['user', 'name', 'john'];
const nested = keys.reduceRight((value, key) => ({ [key]: value }), null);
// 結果: { user: { name: { john: null } } }

4. findLast(): 反向查找

ES13新增方法,從數組末尾開始查找元素:

const numbers = [2, 4, 6, 8, 9, 10, 12];
// 查找最后一個偶數
const lastEven = numbers.findLast(num => num % 2 === 0); // 12

5. 不可變數組操作方法

ES2023引入的新方法:toSorted()、toReversed()、toSpliced(),它們不會修改原數組:

const original = [3, 1, 4, 1, 5];
const sorted = original.toSorted(); // [1, 1, 3, 4, 5]
console.log(original); // [3, 1, 4, 1, 5]

6. lastIndexOf(): 查找最后匹配索引

查找指定元素最后出現的位置:

const text = ['hello', 'world', 'hello', 'javascript'];
console.log(text.lastIndexOf('hello')); // 2
console.log(text.lastIndexOf('hello', 1)); // 0

7. flatMap(): 映射并扁平化

結合了 map() 和 flat() 的功能,效率更高:

const sentences = ['Hello world', 'JavaScript is awesome'];
const words = sentences.flatMap(sentence => sentence.split(' '));
// ['Hello', 'world', 'JavaScript', 'is', 'awesome']

這些方法雖然使用頻率不高,但在特定場景下能夠顯著提升代碼質量和效率。建議在實際開發中根據具體需求選擇合適的數組方法。

責任編輯:武曉燕 來源: 大遷世界
相關推薦

2024-10-08 08:36:50

HTML標簽前端

2014-05-30 14:23:53

創業南京

2021-05-12 07:50:05

Linux運維Linux系統

2020-08-13 09:37:20

Python代碼命令

2022-09-13 12:10:04

unlink刪除文件

2016-10-08 21:25:36

Javascript數組Web

2022-06-12 16:05:22

vimLinux

2025-02-10 07:00:00

JavaScript數組方法前端

2020-12-09 10:34:51

htopLinux命令

2017-05-23 14:59:54

交換機接口寬帶

2024-08-23 15:34:23

JavaScrip數組

2015-10-15 11:20:30

益處虛擬桌面Linux

2023-09-13 09:20:00

日志配置Spring

2021-02-07 07:52:07

數組 JavaScript結構

2019-09-02 08:08:30

緩存HTTP數據庫

2023-04-07 08:46:41

Stream流map()Java8

2022-04-28 08:41:53

JavaScript數組

2022-07-06 10:04:45

JavaScript數組前端

2019-07-25 10:08:05

JavaScript數組轉換

2009-11-05 15:25:36

WCF服務端配置
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 天天干天天操天天爽 | av天空 | 国产精品久久久久久久久久久久久久 | 日韩av一区二区在线 | 欧美亚洲激情 | 亚洲精品视频在线播放 | 国产福利在线播放麻豆 | 国产视频一区在线 | av永久| 中文天堂在线观看 | 日本一区二区三区精品视频 | 午夜a级理论片915影院 | av一区二区三区四区 | 在线观看国产精品视频 | 99久久久99久久国产片鸭王 | 久久福利 | 亚洲黄色在线免费观看 | 国产99免费 | 国产精品资源在线 | 色综合天天天天做夜夜夜夜做 | 国产精品一码二码三码在线 | 亚洲 中文 欧美 日韩 在线观看 | 亚洲欧洲成人 | 日韩激情免费 | 亚洲精品www久久久 www.蜜桃av | 国产日韩欧美一区二区在线播放 | 成人av影院 | 91av视频在线观看 | 国产精品一区二区日韩 | 久久久久久久久淑女av国产精品 | 久久免费香蕉视频 | 亚洲精久 | 一级毛片免费 | 一区日韩 | 黄色片在线 | 在线观看视频一区二区三区 | 午夜免费观看网站 | 国产亚洲一区二区在线观看 | 国产免费又色又爽又黄在线观看 | 免费观看日韩av | 日韩精品一区二区三区高清免费 |