码迷,mamicode.com
首页 > 其他好文 > 详细

map/set/object/array对比

时间:2018-03-06 20:17:17      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:for   test   map   item   body   post   obj   array   对比   

map () {
      //数据结构横向对比, 增,查,改,删
      let map = new Map()
      let array = []
      //增
      map.set(‘t‘,1)
      array.push({t:1})

      console.info(‘map-array‘,map,array)

      //查
      let map_exist = map.has(‘t‘)
      let array_exist = array.find(item => item.t)
      console.info(‘map-array‘,map_exist,array_exist)

      //改
      map.set(‘t‘,2)
      array.forEach(item => item.t?item.t=2:‘‘)
      console.info(‘map-array-modefy‘,map,array)

      //删
      map.delete(‘t‘)
      let index = array.findIndex(item=>item.t)
      array.splice(index,1)
      console.info(‘map-array‘,map,array)
    },

    set () {
      let set = new Set()
      let array = []

      //增
      let obj = {t:1}
      set.add(obj)
      array.push(obj)
      console.log(‘set-array‘,set,array)

      //查
      let set_exist = set.has(obj)
      let array_exist = array.find(item=>item.t)
      console.info(‘set-array‘,set_exist,array_exist)

      //改
      set.forEach(item => item.t?item.t=2:‘‘)
      array.forEach(item => item.t?item.t=2:‘‘)
      console.log(‘set-array‘,set,array)

      //删
      set.forEach(item => item.t?set.delete(item):‘‘)
      let index = array.findIndex(item=>item.t)
      array.splice(index,1)
      console.info(‘set-array‘,set,array)
    },

    test () {
      //map set object 对比
      let item = {t:1}
      let map = new Map()
      let set = new Set()
      let obj = {}

      //增
      map.set(‘t‘,1)
      set.add(item)
      obj[‘t‘] = 1
      console.log(‘map-set-obj‘,map,set,obj)

      //查
      console.log({
        map_exist: map.has(‘t‘),
        set_exist: set.has(item),
        obj_exist: ‘t‘ in obj
      })

      //改
      map.set(‘t‘,2)
      item.t = 2
      obj[‘t‘] = 2
      console.log(‘map-set-obj‘,map,set,obj)

      //删
      map.delete(‘t‘)
      set.delete(item)
      delete obj[‘t‘]
      console.log(‘map-set-obj‘,map,set,obj)
    }

map/set/object/array对比

标签:for   test   map   item   body   post   obj   array   对比   

原文地址:https://www.cnblogs.com/yangAL/p/8516108.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!