国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

詳解Js里的for…in和for…of的用法

2024-05-06 15:41:16
字體:
供稿:網(wǎng)友

之前看編程方法學(xué),for循環(huán)的基本格式是

for(init;test;step ){ statement}//例如for(int i=0,i<10;i++){ ...}

后來接觸了python,for循環(huán)的格式更加的簡(jiǎn)單優(yōu)雅,只要一個(gè)for ……in語句就可以直接遍歷對(duì)象。

for i in arry

今天看廖雪峰的官網(wǎng),居然看到了js里更神奇的操作,for ……of循環(huán),這個(gè)類似于python的for ……in循環(huán)了,雖然js里也有for ……in循環(huán),可是遍歷的是對(duì)象的屬性,類似于鍵值對(duì)里的鍵key,當(dāng)它遍歷array的時(shí)候遍歷的是array的索引,

var a = ['A', 'B', 'C'];for (var i in a) { alert(i); // '0', '1', '2' alert(a[i]); // 'A', 'B', 'C'}

or … of循環(huán)是ES6引入的新的語法,用for … of循環(huán)遍歷集合,用法如下:

var a = ['A', 'B', 'C'];var s = new Set(['A', 'B', 'C']);var m = new Map([[1, 'x'], [2, 'y'], [3, 'z']]);for (var x of a) { // 遍歷Array alert(x);//'A', 'B', 'C'}for (var x of s) { // 遍歷Set alert(x);//'A', 'B', 'C'}for (var x of m) { // 遍歷Map alert(x[0] + '=' + x[1]);//1='x',2='y',3='z'}

for … in循環(huán)由于歷史遺留問題,它遍歷的實(shí)際上是對(duì)象的屬性名稱。一個(gè)Array數(shù)組實(shí)際上也是一個(gè)對(duì)象,它的每個(gè)元素的索引被視為一個(gè)屬性。
當(dāng)我們手動(dòng)給Array對(duì)象添加了額外的屬性后,for … in循環(huán)將帶來意想不到的意外效果:

var a = ['A', 'B', 'C'];a.name = 'Hello';for (var x in a) { alert(x); // '0', '1', '2', 'name'}

for … in循環(huán)將把name包括在內(nèi),但Array的length屬性卻不包括在內(nèi)。

for … of循環(huán)則完全修復(fù)了這些問題,它只循環(huán)集合本身的元素:

var a = ['A', 'B', 'C'];a.name = 'Hello';for (var x of a) { alert(x); // 'A', 'B', 'C'}

以上所述是小編給大家介紹的Js里的for…in和for…of的用法詳解整合,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)錯(cuò)新站長站網(wǎng)站的支持!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 金寨县| 丹寨县| 丹江口市| 儋州市| 南皮县| 汕尾市| 慈溪市| 且末县| 新龙县| 甘南县| 梓潼县| 隆尧县| 克东县| 乌审旗| 沐川县| 甘泉县| 牡丹江市| 剑阁县| 高淳县| 土默特左旗| 靖远县| 杂多县| 都江堰市| 隆子县| 陆丰市| 兴城市| 格尔木市| 蒙阴县| 昌江| 衡山县| 枞阳县| 云阳县| 碌曲县| 东安县| 临洮县| 扎囊县| 永兴县| 肃宁县| 佛山市| 柳林县| 丘北县|