es6,es5的遍歷合集 順便參考ES6詳細理解map,set常用運用


var obj = [{ foo: 'bar', baz: 42 }, { foo: 'bar2', baz: 142 }];

forEach

obj.forEach((item, index) => {
    console.log(item) //{foo: "bar", baz: 42} ...
    console.log(index) //0 ...
  })

for in

  for (const key in obj) {
    console.log(obj[key]) //{ foo: 'bar', baz: 42 } ...
    console.log(key) // 0 ...
  }

for of最適合遍歷的是map對象,set對象

map對象

 把map對象轉化為數組有2種寫法

  var sy = Array.from(maps);
  console.log([...maps])

得到以下形式

  var maps = new Map()
  maps.set("key1", { name: "唐三", value: 123 })
  maps.set("key2", { name: "番茄", value: 456 })
  for (const [key, value] of maps) {
    console.log(key) //key1 ...
    console.log(value) // { name: "唐三", value: 123 } ...
    maps.delete('key1')
  }
  console.log(maps)

set對象

set轉數組與上方map一樣,順便set對象是可以去重的

 它類似於數組,但是成員的值都是唯一的,沒有重復的值。

補充:

Array.from方法用於將兩類對象轉為真正的數組:類似數組的對象(array-like object)和可遍歷(iterable)的對象(包括 ES6 新增的數據結構 Set 和 Map)。

使用for of還需要記住3個Object的方法

Object.keys(),Object.values(),Object.entries()
Object.keys(),Object.values(),Object.entries()

  let { keys, values, entries } = Object;
  var obj = [{ foo: 'bar', baz: 42 }, { foo: 'bar2', baz: 142 }];
  for (let key of keys(obj)) {
    console.log(key)
  }
  for (let key of Object.values(obj)) {
    console.log(key)
  }
  for (let key of entries(obj)) {
    console.log(key)
  }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM