摘要:但也可用于數組遍歷,返回的值是數組的索引,因為,嚴格來說,數組也是一個對象,所對應的屬性是每個值的索引。只遍歷對象自身的和繼承的可枚舉的屬性摘自阮一峰入門對象擴展一章。為新增遍歷方法。
[1] const arr = [7, 8, 9]; const obj = { a: 4, b: 5, c: 6 }; [2] for (let v in arr){ console.log(v); } // 0, 1, 2 [3 ]for (let v in obj){ console.log(v); } // a, b, c [4] arr.child = "child"; [5] arr.__proto__.getChild = function () { return this.child; }; [6] Array.prototype.parent = "parent"; [7] for (let v in arr){ console.log(v); } // 0, 1, 2, child, getChild, parent [8]for (let v of arr){ console.log(v); } // 7, 8, 9 [9] for (let v of arr.values()){ console.log(v); } // 7, 8, 9 [10] for (let v of obj){ console.log(v); } // 報錯 [11] typeof arr.keys(); // "object" arr.keys() instanceof Array; // false arr.keys() instanceof Object; // truefor in
for in在ES5中便出現了。一般用來遍歷對象屬性。但也可用于數組遍歷,返回的值是數組的索引,因為,嚴格來說,數組也是一個對象,所對應的屬性是每個值的索引。 for-in只遍歷對象自身的和繼承的可枚舉的屬性(摘自 阮一峰ECMAScript 6 入門-對象擴展一章)。
如[4]、[5]、[6]所示,為數組添加可遍歷屬性 (所對應描述器descriptor的enumerable屬性為true) ,在[7]中用for-in遍歷都可遍歷出來。
for of為ES6新增遍歷方法。其可遍歷所有具有 iterator 接口的數據結構。for...of循環內部調用的是數據結構的Symbol.iterator方法(generator函數)。(摘自 阮一峰ECMAScript 6 入門--Iterator 和 for...of 循環一章)。Symbol.iterator方法返回的是一個遍歷器,當用for-of去遍歷的時候, 自動調用里面的next方法。
如[8], [9]所示,數組原生具備iterator接口(即默認部署了Symbol.iterator屬性),for...of循環本質上就是調用這個接口產生的 遍歷器。再看
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/97841.html
摘要:函數的關鍵字的作用是停止執行退出函數暫停執行,等待方法調用停止執行,可自行恢復執行答案解析函數可以有很多個。簡答題說出至少個的新特性,并簡述它們的作用。簡答題答關鍵字,用于聲明只在塊級作用域起作用的變量。對象,更合理規范地處理異步操作。 通過對ES6系列文章的學習,相信大家對ES6已結有一定程度的了解。 所以本節的目的在于通過測試,便于讓大家了解在學習中的知識掌握情況,查缺補漏,一步一...
摘要:返回一個布爾值,表示該值是否為的成員。清除所有成員,沒有返回值。該數組中的每一項也必須是數組,內部數組的首個項會作為鍵,第二項則為對應值。返回所有成員的遍歷器需要特別注意的是,的遍歷順序就是插入順序。 Js大部分歷史時期都只存在一種集合類型,也就是數組類型。數組在 JS 中的使用正如其他語言的數組一樣,但缺少更多類型的集合導致數組也經常被當作隊列與棧來使用。數組只使用了數值型的索引,而...
摘要:返回一個布爾值,表示該值是否為的成員。清除所有成員,沒有返回值。上面代碼中,方法返回的遍歷器,同時包括鍵名和鍵值,所以每次輸出一個數組,它的兩個成員完全相等。因此,適合臨時存放一組對象,以及存放跟對象綁定的信息。 Js大部分歷史時期都只存在一種集合類型,也就是數組類型。數組在 JS 中的使用正如其他語言的數組一樣,但缺少更多類型的集合導致數組也經常被當作隊列與棧來使用。數組只使用了數值...
摘要:和定義一組鍵值對的集合它是一組鍵值對的數據結構,由于之前的鍵必須是字符串。 Map和Set Map 定義:一組鍵值對的集合 它是一組鍵值對的數據結構,由于之前javascript的鍵(key)必須是字符串。為了使鍵可以是多種類型的于是在最新的es6中引入了map這種數據結構,這樣可以加快查詢速度,類似于查字典 方法和屬性 var m = map() //空map m.set(學生年齡,...
摘要:構造函數可以接受一個數組作為參數。本身是一個構造函數,用來生成數據結構。實例對象的屬性返回實例的成員總數。返回一個布爾值,表示該值是否為的成員。清除所有成員,沒有返回值。返回鍵值對的遍歷器。使用回調函數遍歷每個成員。Map Map對象保存鍵值對。任何值(對象或者原始值) 都可以作為一個鍵或一個值。構造函數Map可以接受一個數組作為參數。 Map和Object的區別 一個Object 的鍵...
閱讀 3196·2021-09-22 15:05
閱讀 2755·2019-08-30 15:56
閱讀 1062·2019-08-29 17:09
閱讀 799·2019-08-29 15:12
閱讀 2083·2019-08-26 11:55
閱讀 3057·2019-08-26 11:52
閱讀 3377·2019-08-26 10:29
閱讀 1382·2019-08-23 17:19