您好,登錄后才能下訂單哦!
這篇文章主要介紹了javascript的array.at()怎么使用的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇javascript的array.at()怎么使用文章都會有所收獲,下面我們一起來看看吧。
1.方括號語法的局限性
通過索引訪問數組元素一般使用方括號array[index]:
const fruits = ['orange', 'apple', 'banana', 'grape']; const item = fruits[1]; item; // => 'apple'
表達式array[index]求值為位于index的數組項,這種方式也叫屬性訪問器。
在大多數情況下,方括號語法是通過正索引(>= 0)訪問項的好方法,它的語法簡單且可讀。
但有時我們希望從末尾訪問元素,而不是從開始訪問元素。例如,訪問數組的最后一個元素:
const fruits = ['orange', 'apple', 'banana', 'grape']; const lastItem = fruits[fruits.length - 1]; lastItem; // => 'grape'
fruits[fruits.length - 1]是訪問數組最后一個元素的方式,其中fruits.length - 1是最后一個元素的索引。
問題在于方括號訪問器不允許直接從數組末尾訪問項,也不接受負下標。
幸運的是,一個新的提議(截至2021年1月的第3階段)將at()方法引入了數組(以及類型化的數組和字符串),并解決了方括號訪問器的諸多限制。
2.array.at() 方法
簡單來說,array.at(index)訪問index參數處的元素。
如果index參數是一個正整數>= 0,該方法返回該索引處的項目。
const fruits = ['orange', 'apple', 'banana', 'grape']; const item = fruits.at(1); item; // => 'apple'
如果index參數大于或等于數組長度,則與常規訪問器一樣,該方法返回undefined:
const fruits = ['orange', 'apple', 'banana', 'grape']; const item = fruits.at(999); item; // => undefined
真正神奇的是,當你對array.at()方法使用負下標時,將從數組的末尾訪問元素。
const lastItem = fruits.at(-1); lastItem; // => 'grape'
下面是更詳細的array.at()方法示例:
const vegetables = ['potatoe', 'tomatoe', 'onion']; vegetables.at(0); // => 'potatoe' vegetables.at(1); // => 'tomatoe' vegetables.at(2); // => 'onion' vegetables.at(3); // => undefined vegetables.at(-1); // => 'onion' vegetables.at(-2); // => 'tomatoe' vegetables.at(-3); // => 'potatoe' vegetables.at(-4); // => undefined
如果negIndex小于0,則array.at(negIndex)訪問的元素也是array.length + negIndex所在的元素,如下所示:
const fruits = ['orange', 'apple', 'banana', 'grape']; const negIndex = -2; fruits.at(negIndex); // => 'banana' fruits[fruits.length + negIndex]; // => 'banana'
3. 總結
JS 中的方括號語法是通過索引訪問項的常用且好的方法。只需將索引表達式放入方括號array[index]中,并獲取該索引處的數組項。
然而,使用常規訪問器從末尾訪問項并不方便,因為它不接受負索引。因此,例如,要訪問數組的最后一個元素,必須使用一個變通表達式
const lastItem = array[array.length - 1];
幸運的是,新的數組方法array.at(index)允許我們以常規訪問器的方式通過索引訪問數組元素。而且,array.at(index)接受負索引,在這種情況下,該方法從末尾取元素:
const lastItem = array.at(-1);
只需將array.prototype.at polyfill引入到我們的應用程序中,就可以使用 array.at() 方法了。
關于“javascript的array.at()怎么使用”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“javascript的array.at()怎么使用”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。