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

深入解析ECMAScript?2023?中的新數(shù)組方法

 更新時間:2023年12月19日 09:10:13   作者:CodeForBetter  
ECMAScript?是一種標準化的腳本語言,它是?JavaScript?的規(guī)范。ECMAScript?2023?是?JavaScript?編程語言的更新,旨在帶來改進并使?JavaScript?程序可預(yù)測和可維護,這篇文章主要介紹了探索?ECMAScript?2023?中的新數(shù)組方法,需要的朋友可以參考下

前言

ECMAScript 2023 引入了一些新功能,以改進語言并使其更加強大和無縫。這個新版本帶來了令人興奮的功能和新的 JavaScript 數(shù)組方法,使使用 JavaScript 編程更加愉快和輕松。本文將帶領(lǐng)讀者全面了解數(shù)組原型上新 JavaScript 方法。

什么是ECMAScript?

ECMAScript 是一種標準化的腳本語言,它是 JavaScript 的規(guī)范。ECMAScript 2023 是 JavaScript 編程語言的更新,旨在帶來改進并使 JavaScript 程序可預(yù)測和可維護。

ECMAScript 2023 引入的新方法

toReversed()

toReversed() 與 reverse() 類似。 toReversed() 方法以相反的順序返回數(shù)組的元素,而不更改原始數(shù)組。(請注意,ECMAScript 2023 代碼片段中的新 JavaScript 方法在現(xiàn)代 Web瀏覽器上運行。從 MDN 檢查瀏覽器功能。它適用于瀏覽器,因為方法仍然很新。此外,Node.js 不支持這些方法。Node.js 版本 20+ 支持它們。這不利于開發(fā)人員,因為開發(fā)人員使用 Node.js LTS 版本(版本 18)。)

eg:讓我們看一下按時間順序排列的一周中幾天的列表。結(jié)果將以相反的順序顯示。

//This is the original array
const days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'];
//Using reverse()
const reverseDays=days.reverse();
console.log(reverseDays);
//Output: ['Friday', 'Thursday', 'Wednesday', 'Tuesday', 'Monday']
console.log(days);
//Output of original array is changed: ['Friday', 'Thursday', 'Wednesday', 'Tuesday', 'Monday'
 

使用該 reverse() 方法修改原始數(shù)組。

eg: toReversed() 方法在不更改原始數(shù)組的情況下反轉(zhuǎn)數(shù)組??纯催@個例子:

 
//Using toReversed() method
const reversedDays=days.toReversed();
console.log(reversedDays);
//Output: ['Friday', 'Thursday', 'Wednesday', 'Tuesday', 'Monday']
console.log(days);
//Output of original array is not changed: ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']

toReversed() 功能是開發(fā)人員欣賞的一項顯著功能。這是因為原始數(shù)組是用該 reverse() 方法變異的。感謝 ECMAScript 2023 引入該 toReversed() 方法。使用此方法,您可以更改數(shù)組的副本,而不是原始數(shù)組。

toSorted()

toSorted() 類似于 JavaScript 的 sort() 方法。但兩種方法彼此不同,是的!你猜對了。與 sort() 不同,toSorted() 方法不會更改原始數(shù)組。 toReversed() 方法返回一個新數(shù)組,使原始數(shù)組保持不變。

eg: 考慮這種情況,我們需要按升序?qū)?shù)字進行排序。此示例將說明 和 toSorted() 之間的區(qū)別。

//This is the original array
const numbers=[9, 4, 8, 1, 6, 3];
//Using sort
const sortNumbers=numbers.sort();
console.log(sortNumbers);
// Output:[1, 3, 4, 6, 8, 9]
console.log(numbers)//original array
//Output:[1, 3, 4, 6, 8, 9]
//Using toSorted
const sortNumbers=numbers.toSorted();
console.log(sortNumbers);
// Output:[1, 3, 4, 6, 8, 9]
console.log(numbers)//original array
//Output:[9, 4, 8, 1, 6, 3]
//Original array is not mutated

toSorted() 方法修改上述實例中的復(fù)制版本。它返回一個新數(shù)組,其中元素按升序排序。但是,原始數(shù)組不會更改。另一方面, sort() 方法將原始數(shù)組就地改變,如上面的示例所示。

toSpliced()

toSpliced() 數(shù)組方法是 ECMAScript 2023 中的一項新功能。類似于 JavaScript 的 splice() 數(shù)組方法,但略有不同。兩種數(shù)組方法的區(qū)別在于 toSpliced() 不會修改原來的數(shù)組。toSpliced() 創(chuàng)建一個包含已更改元素的新數(shù)組,但原始數(shù)組保持不變。 toSpliced() 可以在一個數(shù)組中執(zhí)行多項操作。您可以添加、刪除和替換數(shù)組中的元素。

eg: 讓我們考慮一個場景,我們有一個元素列表,并希望在不更改原始數(shù)組的情況下刪除一些元素。此示例將說明 和 toSpliced 之間的區(qū)別 splice() 。

//Original array
const fruits=['Grapes', 'Oranges', 'Bananas', 'Mangoes', 'Pineapples'];
//Using Splice
const spliceFruits= fruits.splice(2,1);//removing one fruit(Bananas)
console.log(spliceFruits);
//Output: ['Grapes', 'Oranges', 'Mangoes', 'Pineapples']
console.log(fruits);//original array is altered
//Output: ['Grapes', 'Oranges', 'Mangoes', 'Pineapples']
//Using toSpliced
const splicedFruits= fruits.toSpliced(4,1);//removing one fruit(Pineapples)
console.log(splicedFruits);
//Output: ['Grapes', 'Oranges', 'Bananas', 'Mangoes']
console.log(fruits);//original array remain unmodified
//Output: ['Grapes', 'Oranges', 'Bananas', 'Mangoes', 'Pineapples']
// Adding an element at index 1
const fruits2 = fruits.toSpliced(1, 0, "Passion");
console.log(fruits2); 
//Output: ['Grapes', 'Passion', 'Oranges', 'Bananas', 'Mangoes', 'Pineapples']
// Replacing one element at index 1 with two new elements
const fruits3 = fruits2.toSpliced(1, 1, "Guava", "Melon");
console.log(fruits3); 
//Output: ['Grapes', 'Guava', 'Melon', 'Oranges', 'Bananas', 'Mangoes', 'Pineapples']
//Original array remain unchanged
console.log(fruits)
//Output: ['Grapes', 'Oranges', 'Bananas', 'Mangoes', 'Pineapples']

toSpliced() 數(shù)組方法是 JavaScript 語言的一個重要附加功能。它允許開發(fā)人員在不更改原始數(shù)組的情況下操作數(shù)組。這使開發(fā)人員能夠輕松管理和維護代碼。如上面的示例所示,此方法提供了一種更方便的方法來添加、刪除或替換任何數(shù)組索引處的元素。

with()

with() 數(shù)組方法在引入 ECMAScript 2021 (ES12) 時被添加到 JavaScript 編程語言中。更新數(shù)組中的元素在 JavaScript 中很常見。但是,更改數(shù)組元素會修改初始數(shù)組。with()數(shù)組方法在 ECMAScript 2023 中引入了一項新功能。該 with() 方法提供了一種在不更改原始數(shù)組的情況下更新數(shù)組中元素的安全方法。

eg: 這是通過返回一個包含更新元素的新數(shù)組來實現(xiàn)的。

const flowers=['Lily', 'Daisy', 'Iris', 'Lotus', 'Allium'];
//old way of updating an array;
flowers [4]='Rose';
console.log(flowers);
//Output: ['Lily', 'Daisy', 'Iris', 'Lotus', 'Rose']
//New way of updating an array using with()
const updatedFlowers=flowers.with(4, 'Aster');
console.log(updatedFlowers);
//Output: ['Lily', 'Daisy', 'Iris', 'Lotus', 'Aster']
console.log(flowers);//original array
Output: ['Lily', 'Daisy', 'Iris', 'Lotus', 'Allium']

更新數(shù)組的舊方法使用括號表示法來更改數(shù)組中的元素。使用括號表示法更新數(shù)組,將修改原始數(shù)組。但是,該 with() 方法在更新特定數(shù)組索引中的元素后會獲得相同的結(jié)果,但不會改變原始數(shù)組。您可以創(chuàng)建數(shù)組的副本,該副本將返回一個具有更新索引的新數(shù)組。

總結(jié)

ECMAScript 不斷進步,因為它每年都會推出新版本。這是自2015年以來一直存在的趨勢。這種轉(zhuǎn)變每年都在發(fā)生,以改進 ECMAScript 和 JavaScript。ECMAScript 2023 為 JavaScript 語言帶來了幾個令人興奮的功能。這些功能改進了語言功能和開發(fā)人員體驗。

使用這些上述數(shù)組方法,開發(fā)人員可以接受數(shù)組數(shù)據(jù)的不可變性,因為他們可以確保原始數(shù)組保持不變。它們將增強開發(fā)人員在使用數(shù)組時的工作。保持數(shù)據(jù)不變是有利的,正如 ECMAScript 2023 中的這些數(shù)組方法所證明的那樣。這些好處適用于任何 JavaScript 對象,而不僅僅是數(shù)組。

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

相關(guān)文章

  • Bootstrap導(dǎo)航中表單簡單實現(xiàn)代碼

    Bootstrap導(dǎo)航中表單簡單實現(xiàn)代碼

    這篇文章主要為大家詳細介紹了Bootstrap導(dǎo)航中表單簡單實現(xiàn)代碼,含路徑導(dǎo)航的具體實現(xiàn)代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • JS+CSS實現(xiàn)模仿瀏覽器網(wǎng)頁字符查找功能的方法

    JS+CSS實現(xiàn)模仿瀏覽器網(wǎng)頁字符查找功能的方法

    這篇文章主要介紹了JS+CSS實現(xiàn)模仿瀏覽器網(wǎng)頁字符查找功能的方法,實例分析了javascript實現(xiàn)查找功能的樣式及相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-02-02
  • 前端防止接口重復(fù)請求的四種方案

    前端防止接口重復(fù)請求的四種方案

    文章介紹了幾種常見的防止接口重復(fù)請求的方案,并推薦了分層防重復(fù)策略,建議根據(jù)業(yè)務(wù)場景選擇合適的方案組合,以確保用戶體驗和系統(tǒng)穩(wěn)定性,需要的朋友可以參考下
    2026-02-02
  • 微信小程序?qū)崿F(xiàn)基于三元運算驗證手機號/姓名功能示例

    微信小程序?qū)崿F(xiàn)基于三元運算驗證手機號/姓名功能示例

    這篇文章主要介紹了微信小程序?qū)崿F(xiàn)基于三元運算驗證手機號/姓名功能,涉及三元運算符的判定及字符串正則驗證相關(guān)操作技巧,需要的朋友可以參考下
    2019-01-01
  • Driver.js前端引導(dǎo)頁組件的具體使用

    Driver.js前端引導(dǎo)頁組件的具體使用

    Driver.js是一個引導(dǎo)插件,本文主要介紹了Driver.js前端引導(dǎo)頁組件的具體使用,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • 一文帶你快速學(xué)會JavaScript條件判斷及高級用法

    一文帶你快速學(xué)會JavaScript條件判斷及高級用法

    JavaScript支持其用于執(zhí)行根據(jù)不同的條件不同的操作條件語句,下面這篇文章主要給大家介紹了關(guān)于如何在JavaScript中更好的使用條件判斷的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-09-09
  • js實現(xiàn)的常用的左側(cè)導(dǎo)航效果

    js實現(xiàn)的常用的左側(cè)導(dǎo)航效果

    使用js簡單實現(xiàn)下常用的左側(cè)導(dǎo)航效果為提高導(dǎo)航性能而生,各位朋友可以參考應(yīng)用,希望對大家有所幫助
    2013-10-10
  • 你需要知道的TypeScript高級類型總結(jié)

    你需要知道的TypeScript高級類型總結(jié)

    在開發(fā)過程中,為了應(yīng)對多變的復(fù)雜場景,我們需要了解一下?TypeScript?的高級類型。本文就為大家整理了一些需要掌握的TypeScript高級類型,需要的可以參考一下
    2022-08-08
  • JS獲取計算機mac地址以及IP的實現(xiàn)方法

    JS獲取計算機mac地址以及IP的實現(xiàn)方法

    本篇文章主要是對利用JS獲取計算機mac地址以及IP的實現(xiàn)方法進行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2014-01-01
  • JS數(shù)組索引檢測中的數(shù)據(jù)類型問題詳解

    JS數(shù)組索引檢測中的數(shù)據(jù)類型問題詳解

    這篇文章主要給大家介紹了關(guān)于JS數(shù)組索引檢測中的數(shù)據(jù)類型問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2021-01-01

最新評論

开平市| 汤阴县| 雷州市| 桑日县| 尤溪县| 七台河市| 远安县| 抚宁县| 工布江达县| 淮安市| 上虞市| 南投市| 蚌埠市| 阜平县| 石景山区| 三原县| 镇原县| 花莲县| 广西| 迁安市| 阜平县| 峨眉山市| 乡城县| 姜堰市| 岳阳市| 莱西市| 景东| 锦屏县| 盱眙县| 长沙市| 章丘市| 长宁县| 容城县| 绍兴市| 红原县| 宣化县| 临泉县| 剑阁县| 高邑县| 浙江省| 乳山市|