成人怡红院-成人怡红院视频在线观看-成人影视大全-成人影院203nnxyz-美女毛片在线看-美女免费黄

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

es6中的類似于for循環有哪些

es6中類似于for循環有:1、“for-in”循環,其遍歷的對象便不局限于數組,還可以遍歷對象,語法“for(鍵名 in 對象) {…}”;2、forEach循環,為數組中含有有效值的每一項執行一次callback函數,語法“array.forEach(callback函數,thisValue)”;3、“for-of”循環,語法“for(當前值 of 數組){…}”。

es6中的類似于for循環有哪些

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

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

ECMAScript6(簡稱 ES6)中支持 4 種 for 循環。

  • 簡單for循環

  • for-in

  • forEach

  • for-of

下面我們就來看看這 4 種 for 循環。

簡單 for 循環

下面先來看看大家最常見的一種寫法:

const arr = [1, 2, 3]; for(let i = 0; i < arr.length; i++) {     console.log(arr[i]); }
登錄后復制

es6中的類似于for循環有哪些

當數組長度在循環過程中不會改變時,我們應將數組長度用變量存儲起來,這樣會獲得更好的效率,下面是改進的寫法:

const arr = [1, 2, 3]; for(let i = 0, len = arr.length; i < len; i++) {     console.log(arr[i]); }
登錄后復制

es6中的類似于for循環有哪些

for-in

通常情況下,我們可以用 for-in 來遍歷一遍數組的內容,代碼如下:

const arr = [1, 2, 3]; let index; for(index in arr) {     console.log("arr[" + index + "] = " + arr[index]); }
登錄后復制

一般情況下,運行結果如下:

es6中的類似于for循環有哪些

但這么做往往會出現問題。

for-in 的真相

for-in 循環遍歷的是對象的屬性,而不是數組的索引。因此, for-in 遍歷的對象便不局限于數組,還可以遍歷對象。例子如下:

const person = {     fname: "san",     lname: "zhang",     age: 99 }; let info; for(info in person) {     console.log("person[" + info + "] = " + person[info]); }
登錄后復制

結果如下:

es6中的類似于for循環有哪些

需要注意的是, for-in 遍歷屬性的順序并不確定,即輸出的結果順序與屬性在對象中的順序無關,也與屬性的字母順序無關,與其他任何順序也無關。

Array 的真相

Array 在 Javascript 中是一個對象, Array 的索引是屬性名。事實上, Javascript 中的 “array” 有些誤導性, Javascript 中的 Array 并不像大部分其他語言的數組。首先, Javascript 中的 Array 在內存上并不連續,其次, Array 的索引并不是指偏移量。實際上, Array 的索引也不是 Number 類型,而是 String 類型的。我們可以正確使用如 arr[0] 的寫法的原因是語言可以自動將 Number 類型的 0 轉換成 String 類型的 “0″ 。所以,在 Javascript 中從來就沒有 Array 的索引,而只有類似 “0″ 、 “1″ 等等的屬性。有趣的是,每個 Array 對象都有一個 length 的屬性,導致其表現地更像其他語言的數組。但為什么在遍歷 Array 對象的時候沒有輸出 length 這一條屬性呢?那是因為 for-in 只能遍歷“可枚舉的屬性”, length 屬于不可枚舉屬性,實際上, Array 對象還有許多其他不可枚舉的屬性。

現在,我們再回過頭來看看用 for-in 來循環數組的例子,我們修改一下前面遍歷數組的例子:

const arr = [1, 2, 3]; arr.name = "Hello world"; let index; for(index in arr) {     console.log("arr[" + index + "] = " + arr[index]); }
登錄后復制

運行結果是:

es6中的類似于for循環有哪些

我們看到 for-in 循環訪問了我們新增的 “name” 屬性,因為 for-in 遍歷了對象的所有屬性,而不僅僅是“索引”。同時需要注意的是,此處輸出的索引值,即 “0″、 “1″、 “2″不是 Number 類型的,而是 String 類型的,因為其就是作為屬性輸出,而不是索引。那是不是說不在我們的 Array 對象中添加新的屬性,我們就可以只輸出數組中的內容了呢?答案是否定的。因為 for-in 不僅僅遍歷 array 自身的屬性,其還遍歷 array 原型鏈上的所有可枚舉的屬性。下面我們看個例子:

Array.prototype.fatherName = "Father"; const arr = [1, 2, 3]; arr.name = "Hello world"; let index; for(index in arr) {     console.log("arr[" + index + "] = " + arr[index]); }
登錄后復制

運行結果是:

arr[0] = 1 arr[1] = 2 arr[2] = 3 arr[name] = Hello world arr[fatherName] = Father
登錄后復制

寫到這里,我們可以發現 for-in 并不適合用來遍歷 Array 中的元素,其更適合遍歷對象中的屬性,這也是其被創造出來的初衷。卻有一種情況例外,就是稀疏數組。考慮下面的例子:

let key; const arr = []; arr[0] = "a"; arr[100] = "b"; arr[10000] = "c"; for(key in arr) {     if(arr.hasOwnProperty(key)  &&            /^0$|^[1-9]d*$/.test(key) &&            key <= 4294967294                       ) {         console.log(arr[key]);     } }
登錄后復制

for-in 只會遍歷存在的實體,上面的例子中, for-in 遍歷了3次(遍歷屬性分別為”0″、 “100″、 “10000″的元素,普通 for 循環則會遍歷 10001 次)。所以,只要處理得當, for-in 在遍歷 Array 中元素也能發揮巨大作用。

為了避免重復勞動,我們可以包裝一下上面的代碼:

function arrayHasOwnIndex(array, prop) {     return array.hasOwnProperty(prop) &&         /^0$|^[1-9]d*$/.test(prop) &&         prop <= 4294967294; // 2^32 - 2 }
登錄后復制

使用示例如下:

for (let key in arr) {     if (arrayHasOwnIndex(arr, key)) {         console.log(arr[key]);     } }
登錄后復制

for-in 性能

正如上面所說,每次迭代操作會同時搜索實例或者原型屬性, for-in 循環的每次迭代都會產生

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
中国丰满熟妇XXXX| 400部精品国偷自产在线| 亚洲熟女WWW一区二区三区| 亚洲中文字幕无码日韩| 18禁男女爽爽爽午夜网站免费| CHINESE熟女熟妇1乱| 成熟丰满熟妇自慰XXXXX| 国产精品久久毛片| 精品少妇人妻AV无码专区| 乱码视频午夜在线观看| 人妻少妇精品视频无码综合| 天堂岛最新版在线BT天堂| 亚洲AV无码专区国产乱码DVD | 国产CHINESE男男GAYGAY网站| 国产无套粉嫩白浆在线| 久久久久久亚洲精品中文字幕| 农村妇女野外交性高清片| 日韩精品一区二区三区在线观看| 无码少妇一区二区浪潮av| 亚洲一卡2卡3卡4卡精品分类| 99久久亚洲精品无码毛片| 饭桌上故意张开腿让公在线观看| 国产精品泄火熟女| 久久夜色精品国产嚕嚕亚洲AV| 欧美性VIDEOS高清精品| 无码欧美毛片一区二区三在线视频| 亚洲免费成人av| M豆传媒有限公司观看| 国产精品久久久久久久久久直播| 精品熟女少妇AV免费久久| 欧洲肉欲K8播放毛片护士报告| 特黄 做受又硬又粗又大视频| 亚洲精品国产精品乱码不卡√ | 亚洲日韩乱码久久久久久| 99久久精品国产一区二区| 国产成人年无码AV片在线观看 | 国产午夜福利精品久久| 免费少妇A级毛片人成网| 色综合天天综合网天天小说| 亚洲熟妇丰满XXXXX黑| 波多野结衣AV一区二区无码| 狠狠色丁香久久婷婷综合蜜芽五月 | 欧美激情综合色综合啪啪五月| 无码人妻AⅤ一区二区三区| 影音先锋2020色资源网| 抖抈短视频APP下载| 久久精品人妻一区二区三区| 日日摸夜夜添无码无码AV| 亚洲乱色熟女一区二区三区麻豆| 办公室双腿打开揉弄高潮淑芬| 好男人视频在线观看| 被添高潮爱爱免费视频| 亚洲丰满少妇自摸| H罩杯大胸爆乳交在线观看 | 99久久国产露脸国语对白| 国产精品免费无遮挡无码永久视频 | 女人自熨全过程直播| 性一交一乱一乱一视频| 亚欧成人无码AV在线播放| 18日韩xxxx| 国产乱子伦高清露脸对白| 欧美成人精品1314www| 亚洲AV日韩精品久久久久久A| 999ZYZ玖玖资源站永久| 交换朋友夫妻互换客厅韩国5| 人物动物交互狗AA| 永久免费AⅤ无码网站在线观看| 国产激情久久久久影院老熟女免费| 蜜桃AV自慰久久久久免费网站| 西西人体444WWW大胆无码视| ぱらだいす天堂中文网WWW| 精品亚洲国产成人蜜臀优播AV| 熟女少妇内射日韩亚洲| ◇一本大道香蕉中文在线| 国产自国产自愉自愉免费24区 | 久久精品国产精品国产精品污| 少妇亚洲XXXX| A级毛片毛片免费观的看久| 久久WWW免费人成_看片中文| 无码人妻精品中文字幕不卡| 边做边爱完整版MP3在线下载| 久久午夜无码鲁丝片秋霞| 性猛交富婆Ⅹ×××乱大交| 波多野结衣AV无码久久一区| 美女把腿扒开让我添视频| 亚洲AV无码一区二区三区网站| 哒哒哒WWW在线影院| 欧美丰满熟妇乱XXXXX视频| 亚洲欧美成人一区二区三区| 国产乱人伦偷精品视频免下载 | 丰满少妇高潮惨叫在线观看| 欧美丰满熟妇BBBBBB百度| 亚洲中文字幕久久无码| 韩国激情高潮无遮挡HD| 婷婷丁香六月激情综合啪| 波多野结衣系列18部无码观看A| 乱码中字在线观看一二区| 亚洲精品乱码久久久久久自慰| 国产精品无码A∨麻豆| 上边一面亲下边一面膜的注意事项| AAAAA级大公开超高准确率| 久久露脸国产精品| 亚洲精品乱码久久久久久| 国产无人区一码二码三码MBA | √BT天堂网WWW中文在线| 亚洲AV无码国产一区二区三区四| 大肉大捧一进一出好爽视频| 欧美日韩视频在线第一区| 337P日本欧洲亚洲大胆在线| 老奶奶能叫WOMAN吗| 亚洲日韩丝袜熟女变态夜夜爽| 国模无码视频一区二区三区| 性FREE毛茸茸VIDEOS| 国产精品一区二区久久不卡| 无码成人AAAAA毛片| 国产成人A∨麻豆精品| 熟妇毛耸耸浓密茂盛| 妇女强高潮18ⅩXXX| 日日摸日日碰夜夜爽亚洲| 成人国内精品久久久久影院VR| 人妻巨大乳HD免费看| JULIA无码人妻中文字幕在线| 欧美丰满熟妇XXXX| BGMBGMBGM老太太水太多| 欧美极品小妇另类xXXX性| 99久久免费精品高清特色大片 | 在线精品国产成人综合| 浪潮AV色综合久久天堂| 英语老师乖乖挽起裙子的意思| 久久久久久伊人高潮影院| 一女被两男吃奶玩乳尖| 鲁一鲁一鲁一鲁一澡| 中文字幕AV免费专区| 女儿国免费观看完整版在线| 97久人人做人人妻人人玩精品| 女人脱精光直播APP下载| BT天堂在线WWW最新版官网| 欧洲肉欲K8播放毛片| 成人白浆超碰人人人人| 色偷偷色噜噜狠狠网站30根| 灌溉系统NPC游戏双男主| 我的少妇邻居全文免费| 国产亚洲AV综合人人澡精品| 亚洲成AV人片在| 久久久久亚洲AV成人无码网站 | 欧美人与性囗牲恔配| 办公室撕开奶罩揉吮奶漫画| 少妇99久久黑人| 国产探花在线精品一区二区| 亚洲国产综合无码一区| 久久久久久综合网天天| 52秋霞东北熟女叫床| 日本丰满岳乱妇在线观看| 国产V亚洲V天堂无码久久久 | 差差差很疼视频30分钟应用| 少妇厨房愉情理9仑片视频| 国产精品无码久久AV不卡| 亚洲AV永久无码精品一区| 久久久不卡国产精品一区二区| 中文字幕AV一区二区三区人妻少| 欧美男女一进一出| 国产 | 欧洲野花视频欧洲1| 亚洲AV色香蕉一区二区蜜桃| 久久亚洲AⅤ精品网站| А√中文在线天堂| 无码人妻丰满熟妇啪啪网站| 精品三级久久久久电影我网| 27报女上男下动态图GIF图| 日韩系列中文无码| 国产性自爱拍偷在在线播放| 一区二区三区乱码在线 | 中文| 欧美性大片XXXXX久久久| 国产VIDEOSSEX精品| 亚洲精品无码你懂的网站| 男朋友想吻我腿中间那个部位| 大桥未久亚洲无AV码在线| 亚洲AV中文无码乱人伦在线咪咕| 两个黑人大战嫩白金发美女| めんたいさんでぃふぇんすっ甘雨| 无码国内精品久久人妻| 久久99国产精品尤物| XX娇小嫩XX中国XX| 小猪视频APP永久观看破解| 久久夜色精品国产噜噜| 粗壮挺进人妻水蜜桃成熟漫画| 亚洲AV无码专区国产乱码在线观| 免费国产无人区码卡二卡3卡 | 成人国产欧美大片一区| 亚洲AV无码专区色爱天堂老鸭窝 | 98久9在线 | 免费| 无码国产色欲XXXX视频| 看成年女人午夜毛片免费| 潮喷无码正在播放| 亚洲国产精品悠悠久久琪琪| 人妻 中文无码 中出| 黑人精品欧美一区二区蜜桃| 99精品久久久久精品双飞| 性色AV无码专区一ⅤA亚洲| 欧美大屁股XXXX高跟欧美黑人| 国产女人乱人伦精品一区二区|