1. for ... in 語句
for (let variable in object) { ... }
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Statements/for...in
以任意次序迭代一個對象的可枚舉屬性。
- var obj = {a: 1, b: 2};
- for (let i in obj) {
- console("key:" + i + ", value:" + obj[i]);
- }
數組Array的遍歷,i則為數字
2. 迭代器遍歷
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Iterator
如Array
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach
- arr.forEach((value, index) => {
- console.log(value);
- });
3. for ... of 語句
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Statements/for...of
for...of語句在可迭代對象(包括 Array, Map, Set, String, TypedArray,arguments 對象等等)上創建一個迭代循環,對每個不同屬性的屬性值,調用一個自定義的有執行語句的迭代掛鈎.
但對於普通對象是不適應的。原因是沒有實現參考下文。
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/iterable