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

你會喜歡的新數組方法:array.at(index)

大數據 數據分析
除了普通對象之外,數組是 JavaScript 中廣泛使用的數據結構,而數組中常用操作是按索引訪問元素。在本文中,我們介紹新的數組方法array.at(index)。

[[381157]]

 本文已經過 dmitripavlutin 授權翻譯!

除了普通對象之外,數組是 JavaScript 中廣泛使用的數據結構,而數組中常用操作是按索引訪問元素。在本文中,我們介紹新的數組方法array.at(index)。

1.方括號語法的局限性

通過索引訪問數組元素一般使用方括號array[index]:

  1. const fruits = ['orange''apple''banana''grape']; 
  2.  
  3. const item = fruits[1]; 
  4. item; // => 'apple' 

表達式array[index]求值為位于index的數組項,這種方式也叫屬性訪問器。

在大多數情況下,方括號語法是通過正索引(>= 0)訪問項的好方法,它的語法簡單且可讀。

但有時我們希望從末尾訪問元素,而不是從開始訪問元素。例如,訪問數組的最后一個元素:

  1. const fruits = ['orange''apple''banana''grape']; 
  2.  
  3. const lastItem = fruits[fruits.length - 1]; 
  4. lastItem; // => 'grape' 

fruits[fruits.length - 1]是訪問數組最后一個元素的方式,其中fruits.length - 1是最后一個元素的索引。

問題在于方括號訪問器不允許直接從數組末尾訪問項,也不接受負下標。

幸運的是,一個新的提議(截至2021年1月的第3階段)將at()方法引入了數組(以及類型化的數組和字符串),并解決了方括號訪問器的諸多限制。

2.array.at() 方法

簡單來說,array.at(index)訪問index參數處的元素。

如果index參數是一個正整數>= 0,該方法返回該索引處的項目。

  1. const fruits = ['orange''apple''banana''grape']; 
  2.  
  3. const item = fruits.at(1); 
  4. item; // => 'apple' 

如果index參數大于或等于數組長度,則與常規訪問器一樣,該方法返回undefined:

  1. const fruits = ['orange''apple''banana''grape']; 
  2.  
  3. const item = fruits.at(999); 
  4. item; // => undefined 

真正神奇的是,當你對array.at()方法使用負下標時,將從數組的末尾訪問元素。

  1. const lastItem = fruits.at(-1); 
  2. lastItem; // => 'grape' 

下面是更詳細的array.at()方法示例:

  1. const vegetables = ['potatoe''tomatoe''onion']; 
  2.  
  3. vegetables.at(0); // => 'potatoe' 
  4. vegetables.at(1); // => 'tomatoe' 
  5. vegetables.at(2); // => 'onion' 
  6. vegetables.at(3); // => undefined 
  7.  
  8. vegetables.at(-1); // => 'onion' 
  9. vegetables.at(-2); // => 'tomatoe' 
  10. vegetables.at(-3); // => 'potatoe' 
  11. vegetables.at(-4); // => undefined 

示例地址:https://codesandbox.io/s/array-at-method-2xr74?file=/src/index.js

如果negIndex小于0,則array.at(negIndex)訪問的元素也是array.length + negIndex所在的元素,如下所示:

  1. const fruits = ['orange''apple''banana''grape']; 
  2.  
  3. const negIndex = -2; 
  4.  
  5. fruits.at(negIndex);              // => 'banana' 
  6. fruits[fruits.length + negIndex]; // => 'banana' 

3. 總結

JS 中的方括號語法是通過索引訪問項的常用且好的方法。只需將索引表達式放入方括號array[index]中,并獲取該索引處的數組項。

然而,使用常規訪問器從末尾訪問項并不方便,因為它不接受負索引。因此,例如,要訪問數組的最后一個元素,必須使用一個變通表達式

  1. const lastItem = array[array.length - 1]; 

幸運的是,新的數組方法array.at(index)允許我們以常規訪問器的方式通過索引訪問數組元素。而且,array.at(index)接受負索引,在這種情況下,該方法從末尾取元素:

  1. const lastItem = array.at(-1); 

只需將array.prototype.at polyfill引入到我們的應用程序中,就可以使用 array.at() 方法了。

完~ 我是小智,我要去刷碗了,我們下期見~

作者:dmitripavlutin 譯者:前端小智 來源:dmitripavlutin

本文轉載自微信公眾號「大遷世界」,作者大遷世界。轉載本文請聯系大遷世界公眾號。

 

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

2022-04-28 08:41:53

JavaScript數組

2022-07-06 10:04:45

JavaScript數組前端

2011-12-19 10:33:27

手機博客蝴蝶應用達人

2022-11-13 15:33:30

JavaScript數組開發

2022-08-10 12:02:52

面試JavaScript

2021-07-09 14:26:11

KotlinLogo設計

2019-07-25 10:08:05

JavaScript數組轉換

2023-11-24 17:13:50

WaveLinux

2024-11-19 08:35:49

前端開發數組

2022-09-27 14:36:57

JavaScrip數組開發

2023-07-04 15:52:49

JavaScript數組

2023-02-01 08:31:48

2010-01-08 09:30:03

Java數組JVM

2016-10-08 21:25:36

Javascript數組Web

2016-02-01 11:45:42

新ICT/IT技術

2022-10-18 16:35:51

JavaScrip數組參數

2013-10-28 13:30:21

Windows 9微軟

2020-03-19 15:30:08

JavaScript數組字符串

2024-10-21 13:05:40

2022-11-23 16:12:57

JavaScript數據類型數組
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲国产成人精品女人久久久 | 一级大片网站 | 99综合| 国产高清美女一级a毛片久久w | 黄色一级毛片免费看 | 免费一级毛片 | 国产精品久久国产精品久久 | 99国产精品99久久久久久 | 免费一区 | 91视在线国内在线播放酒店 | 日本网站免费在线观看 | 青草青草久热精品视频在线观看 | 毛片一级片 | 欧美激情一区二区三区 | 精品一区二区三区在线观看国产 | 在线看中文字幕 | 欧美1—12sexvideos | 91精品国产一区二区三区 | 天天操狠狠操 | 在线观看国产 | 97伦理最新伦理 | 红桃视频一区二区三区免费 | 国产一区二区高清在线 | 国产精品国色综合久久 | 国产成人高清视频 | 一区二区久久 | 一区二区三区国产 | 黄色毛片在线看 | 日韩有码一区 | 国产在线a视频 | 欧美激情一区 | 91xxx在线观看 | 日本一区二区三区精品视频 | 日本一区二区在线视频 | 天天色综网| 欧美一区二区三区视频在线播放 | 日韩精品一区二区在线观看 | 国产一区二区三区四区五区3d | 久久久久久久久久久国产 | 97精品国产手机 | 亚洲一区二区精品视频在线观看 |