久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長資訊網
最全最豐富的資訊網站

ES6怎么求數組反轉

在ES6中,可以利用數組對象的reverse()方法來實現數組反轉,該方法用于顛倒數組中元素的順序,將最后一個元素放在第一位,而第一個元素放在最后,語法“array.reverse()”。reverse()方法會修改原始數組,如果不想修改需要配合擴展運算符“…”使用,語法“[…array].reverse()”。

ES6怎么求數組反轉

前端(vue)入門到精通課程:進入學習
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API調試工具:點擊使用

本教程操作環境:windows7系統、ECMAScript 6版、Dell G3電腦。

在工作面試和編碼測試中,反轉具有特定限制的數組是最常見的挑戰之一。

在ES6中,可以利用數組對象的reverse()方法來實現數組反轉。reverse()方法可反轉數組元素的順序,第一個元素變成最后一個元素,最后一個元素變成第一個元素。

如何使用Reverse方法反轉JavaScript中的數組

let numbers = [1, 2, 3, 4, 5]; let reversedNumbers = numbers.reverse();  console.log(reversedNumbers); // [5, 4, 3, 2, 1]
登錄后復制

但是請記住,reverse 方法會修改原始數組:

let numbers = [1, 2, 3, 4, 5]; let reversedNumbers = numbers.reverse();  console.log(reversedNumbers); // [5, 4, 3, 2, 1]  console.log(numbers); // [5, 4, 3, 2, 1]
登錄后復制

一些編碼挑戰可能希望您保留原始數組,因此讓我們看一下如何在不更改原始數組的情況下反轉數組。

如何使用Spread運算符反轉JavaScript中的數組

你可以結合使用擴展運算符(Spread)和 reverse 方法來反轉數組,而無需更改原始數組。

首先,通過用方括號 [] 括住spread語法,將spread運算符返回的元素放入新數組中:

[...numbers]
登錄后復制

然后,你在數組上調用 reverse 方法。這樣,將在新數組而不是原始數組上執行 reverse 方法:

let numbers = [1, 2, 3, 4, 5]; let reversedNumbers = [...numbers].reverse();  console.log(reversedNumbers); // [5, 4, 3, 2, 1]  console.log(numbers); // [1, 2, 3, 4, 5]
登錄后復制

注意spread 方法是ES6語法,當你需要支持較舊的瀏覽器或要使用ES5語法時,可以結合使用 slicereverse 方法。讓我們現在來看。

如何使用Slice和Reverse方法反轉JavaScript中的數組

slice 方法用于將所選元素作為新數組返回,當你調用不帶任何參數的方法時,它將返回一個與原始數組相同的新數組(從第一個元素到最后一個元素)。

接下來,你在新返回的數組上調用 reverse 方法,這就是為什么原始數組不反轉的原因:

let numbers = [1, 2, 3, 4, 5]; let reversedNumbers = numbers.slice().reverse();  console.log(reversedNumbers); // [5, 4, 3, 2, 1]  console.log(numbers); // [1, 2, 3, 4, 5]
登錄后復制

如何在沒有Reverse方法的情況下在JavaScript中反轉數組

有時面試會挑戰你對數組進行逆向操作,而不采用 reverse 方法。沒問題!你可以使用 for 循環和數組 push 方法的組合,就像下面的例子。

let numbers = [1, 2, 3, 4, 5]; let reversedNumbers = [];  for(let i = numbers.length -1; i >= 0; i--) {   reversedNumbers.push(numbers[i]); }  console.log(reversedNumbers);
登錄后復制

如何用JS編寫自己的反轉函數

最后,假設你的任務是編寫自己的反轉函數,該函數需要在不創建副本的情況下反轉數組。乍一看,這似乎很復雜,但是不用擔心,因為它實際上很簡單。

在這里你需要做的是交換數組的第一個和最后一個元素,然后交換第二個和倒數第二個元素,依此類推,直到交換了所有元素。

ES6怎么求數組反轉

讓我們編寫一個函數來做到這一點。

編寫函數 customReverse,并使用 array.length - 1 作為變量,同時存儲第一個索引為 0 和最后一個索引。

function customReverse(originalArray) {   let leftIndex = 0;   let rightIndex = originalArray.length - 1; }
登錄后復制

接下來,創建一個 while 循環,只要 leftIndex 小于 rightIndex,它就會運行。

在此循環內,交換 leftIndexrightIndex 的值,你可以將值之一臨時存儲在臨時變量中:

while (leftIndex < rightIndex) {   // 交換元素   let temp = originalArray[leftIndex];   originalArray[leftIndex] = originalArray[rightIndex];   originalArray[rightIndex] = temp; }
登錄后復制

最后,將 leftIndex 向上移動,將 rightIndex 向下移動,當 while 循環重復時,它將交換倒數第二個元素,依此類推:

 function customReverse(originalArray) {    let leftIndex = 0;   let rightIndex = originalArray.length - 1;    while (leftIndex < rightIndex) {      // 用temp變量交換元素     let temp = originalArray[leftIndex];     originalArray[leftIndex] = originalArray[rightIndex];     originalArray[rightIndex] = temp;      // 將索引移到中間     leftIndex++;     rightIndex--;   } }
登錄后復制

當沒有其他要反轉的元素時,循環將立即停止。對于奇數的數組 leftIndexrightIndex 的值會相等,所以不用再交換。對于偶數的數組 leftIndex 將大于 rightIndex

你可以測試該功能以查看其是否正常工作,如下所示:

let myArray = [1, 2, 3, 4, 5];  customReverse(myArray);  console.log(myArray);  // output is [5, 4, 3, 2, 1]
登錄后復制

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
久久久久国产精品一区三寸| 国产精品久久久久av蜜臀| 亚洲香蕉视频| 蜜桃91丨九色丨蝌蚪91桃色| 激情综合激情| 欧美精选一区二区三区| 亚洲香蕉网站| 日韩精品一区第一页| 亚洲一区有码| 欧美激情视频一区二区三区在线播放| 欧美日韩18| 国产aⅴ精品一区二区四区| 国产极品嫩模在线观看91精品| 欧美日本三区| 亚洲天堂av影院| 国产亚洲欧洲| 国产免费av一区二区三区| 精品国产亚洲一区二区三区大结局| 红杏一区二区三区| 1000部精品久久久久久久久| 噜噜噜躁狠狠躁狠狠精品视频 | 亚洲最新av| 精品国产麻豆| 蜜臀a∨国产成人精品| 国产精品乱战久久久| 久久久久免费av| 亚洲免费一区二区| 久久久亚洲欧洲日产| 国产一区白浆| 国产一区精品福利| 亚洲综合不卡| sm捆绑调教国产免费网站在线观看| 亚洲一区二区网站| 精品午夜av| 亚洲精品美女91| 免费观看久久av| 免费在线亚洲| 亚洲精品伦理| 午夜在线一区二区| 一本大道色婷婷在线| 国产精品男女| 国产99久久久国产精品成人免费| 91精品国产成人观看| 日本91福利区| 欧美~级网站不卡| 国产h片在线观看| 国产精品xxx在线观看| 亚洲综合中文| 热久久国产精品| 国产农村妇女精品一区二区| 精品国产黄a∨片高清在线| 日韩高清成人在线| 人人香蕉久久| 麻豆一区二区三区| 国产丝袜一区| 日本午夜精品久久久久| 91成人精品| 久久高清免费| 在线亚洲一区| 噜噜噜躁狠狠躁狠狠精品视频| 91高清一区| 奶水喷射视频一区| 免费精品视频在线| 99国产成+人+综合+亚洲欧美| 在线一区视频观看| 精品丝袜在线| 在线看片国产福利你懂的| 精品伊人久久久| 日韩毛片视频| 欧美1区2区3区| 美女网站久久| 蜜臀精品一区二区三区在线观看| 首页国产欧美日韩丝袜| 亚洲精品麻豆| 久久gogo国模啪啪裸体| 正在播放日韩精品| 欧美亚洲国产一区| 一级欧美视频| 狠狠久久伊人中文字幕| 日韩成人精品一区| 亚洲夜间福利| 日韩欧美中文在线观看| 久久久免费人体| 欧美1级日本1级| 国产亚洲一区| 欧美性感美女一区二区| 亚洲一区二区三区高清| 久久激情综合网| 久久久精品日韩| 97久久亚洲| 国产伊人精品| 国产剧情一区| 在线视频精品| 老司机免费视频一区二区三区| 亚洲h色精品| 国产精品99久久久久久董美香| 夜夜嗨网站十八久久 | 国产探花在线精品| 久久精品青草| 久久国产人妖系列| 国产日产一区| 日韩在线中文| 久久99偷拍| 亚洲精品极品| 久久国产中文字幕| 国产精品一区亚洲| 欧美午夜不卡影院在线观看完整版免费| 91精品丝袜国产高跟在线| 999国产精品| 老司机精品视频网| 亚洲精品麻豆| 日韩亚洲国产欧美| 久久久人人人| 成人在线观看免费视频| 日韩黄色av| 激情久久婷婷| 青青青免费在线视频| 卡一卡二国产精品| 777久久精品| 日本中文字幕视频一区| 久久成人国产| 国产亚洲精品v| 午夜在线视频观看日韩17c| 在线日韩av| 婷婷中文字幕一区| 欧美性感美女一区二区| a天堂资源在线| 久久久久伊人| 国产一区二区三区国产精品| 国产精品久久久久久模特| 石原莉奈在线亚洲二区| 先锋亚洲精品| 日韩一区精品| 日韩高清一区在线| 国产精品密蕾丝视频下载| 国产精品三p一区二区| 欧美黄页在线免费观看| 国产一区二区三区网| а√天堂8资源中文在线| 国产精品xx| av亚洲免费| 亚洲专区视频| 国产伦精品一区二区三区视频| 国产精品白丝av嫩草影院| 国产精品99一区二区三区| 久久只有精品| 久久精品影视| 亚洲18在线| 国产成人精品一区二区三区在线| 在线中文字幕播放| 国产精品一页| 欧美91精品| 热久久国产精品| 久久av免费看| 亚洲精品一级二级| 国产福利资源一区| 中文字幕一区二区三区日韩精品| 成人午夜毛片| 综合国产视频| 粉嫩av一区二区三区四区五区 | 99精品美女| 亚洲精品欧美| 新版的欧美在线视频| 日本精品一区二区三区在线观看视频| 精品一区二区三区亚洲| 亚洲一区二区免费看| 国产图片一区| 不卡中文一二三区| 国产欧美日韩影院| 午夜久久一区| 欧美好骚综合网| 亚洲精品人人| 亚洲福利一区| 日韩av在线播放网址| 中文字幕av一区二区三区四区| 久久精品女人| 中文字幕日韩欧美精品高清在线| 狠狠久久伊人| 欧美在线观看天堂一区二区三区| 激情久久婷婷| 日韩免费视频| 麻豆视频在线看| 韩国一区二区三区视频| 国产精品资源| 中文字幕中文字幕精品| 好吊视频一区二区三区四区| 日韩成人精品一区| 精品视频网站| 精品三级国产| 黄色在线网站噜噜噜| 福利一区和二区| 精品无人区麻豆乱码久久久| 久久av综合| 色婷婷综合网| 亚洲精品一级二级| 日韩精品中文字幕第1页| 九色porny丨国产首页在线| 黄毛片在线观看| 久久在线免费| 日韩中文字幕亚洲一区二区va在线|