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

首頁 > 編程 > JavaScript > 正文

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

2019-11-19 11:55:39
字體:
來源:轉載
供稿:網友

之前看編程方法學,for循環的基本格式是

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

后來接觸了python,for循環的格式更加的簡單優雅,只要一個for ……in語句就可以直接遍歷對象。

for i in arry

今天看廖雪峰的官網,居然看到了js里更神奇的操作,for ……of循環,這個類似于python的for ……in循環了,雖然js里也有for ……in循環,可是遍歷的是對象的屬性,類似于鍵值對里的鍵key,當它遍歷array的時候遍歷的是array的索引,

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

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

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循環由于歷史遺留問題,它遍歷的實際上是對象的屬性名稱。一個Array數組實際上也是一個對象,它的每個元素的索引被視為一個屬性。
當我們手動給Array對象添加了額外的屬性后,for … in循環將帶來意想不到的意外效果:

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

for … in循環將把name包括在內,但Array的length屬性卻不包括在內。

for … of循環則完全修復了這些問題,它只循環集合本身的元素:

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

以上所述是小編給大家介紹的Js里的for…in和for…of的用法詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 会宁县| 威远县| 巧家县| 临颍县| 思南县| 沙坪坝区| 岳阳市| 清涧县| 襄樊市| 阿图什市| 西城区| 饶河县| 三门峡市| 商水县| 砀山县| 商南县| 额尔古纳市| 定边县| 拜泉县| 常宁市| 崇信县| 东山县| 温泉县| 裕民县| 香格里拉县| 枣庄市| 上饶县| 宁陵县| 瓮安县| 兴义市| 寿光市| 井研县| 鹤壁市| 孝昌县| 都匀市| 小金县| 陆川县| 临沭县| 南宫市| 怀远县| 遵义县|