日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Object value iterator:值迭代器

發布時間:2025/3/15 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Object value iterator:值迭代器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1 // ES5 2 // 對于數組,使用標準的 for 循環,其實這種方式并不是在遍歷值,而是遍歷下標來指向值!ES5中增加了一些數組迭代器:forEach、every、some 3 // forEach:遍歷數組中的所有值并忽略回調函數的返回值 4 // every:一直運行直到回調函數返回 false 5 // some:一直運行直到回調函數返回 true 6 // 對于對象, for..in 循環實際上遍歷的是對象的可枚舉屬性列表(包括原型鏈)需要手動獲取屬性值 7 // 手動實現一個類似內置迭代器的 @@iterator 8 var myObject = { 9 a: 2, 10 b: 3 11 }; 12 13 Object.defineProperty( myObject, Symbol.iterator, { 14 enumerable: false, 15 writable: false, 16 configurable: true, 17 value: function() { 18 var o = this; 19 var idx = 0; 20 var ks = Object.keys( o ); 21 22 return { 23 next: function() { 24 return { 25 value: o[ks[idx++]], 26 done: (idx > ks.length) 27 }; 28 } 29 }; 30 } 31 } ); 32 33 // 手動遍歷 myObject 34 var it = myObject[Symbol.iterator](); 35 36 console.log(it.next()); // { done: false, value: 2 } 37 console.log(it.next()); // { done: false, value: 3 } 38 console.log(it.next()); // { done: true, value: undefined } 39 40 // ES6 41 // 使用 for..of 遍歷數據結構(數組、對象等等)中的值,它會使用內置的 @@iterator 對象并調用它的 next 方法來遍歷數據值 42 for (var v of myObject) { 43 console.log(v); 44 }

?

轉載于:https://www.cnblogs.com/kuangliu/p/6376721.html

總結

以上是生活随笔為你收集整理的Object value iterator:值迭代器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。