码迷,mamicode.com
首页 > 编程语言 > 详细

ES6(十)map、set与数组和对象的比较

时间:2019-09-10 01:11:49      阅读:111      评论:0      收藏:0      [点我收藏+]

标签:add   cti   odi   let   dex   code   find   get   spl   

Map和数组的对比

let map = new Map()
let array = []
//
map.set(‘t‘, 1)
array.push({t: 1})
console.log(‘add‘, map, array)
//
let mapExist = map.has(‘t‘)
let arrayExist = array.find(item => item.t)
console.log(‘get‘, mapExist, arrayExist)
//
map.set(‘t‘, 2)
array.forEach(item => {
  item = item.t ? item.t = 2 : ‘‘
  return item
})
console.log(‘modify‘, map, array)
//
map.delete(‘t‘)
array.splice(array.findIndex(item => item.t), 1)
console.log(‘remove‘, map, array)

set和数组的对比

let set = new Set()
let array = []
//
set.add({t: 1})
array.push({t: 1})
console.info(‘add‘, set, array)
//
let setExist = set.has({t: 1})
let arrayExist = array.find(item => item.t)
console.info(‘get‘, setExist, arrayExist)
//
set.forEach(item => {
  item = item.t ? item.t = 2 : ‘‘
  return item
})
array.forEach(item => {
  item = item.t ? item.t = 2 : ‘‘
  return item
})
console.info(‘modify‘, set, array)
//
set.forEach(item => {
  item = item.t ? set.delete(item) : ‘‘
  return item
})
array.splice(array.findIndex(item => item.t), 1)
console.info(‘delete‘, set, array)


map、set和对象的使用比较

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(‘add‘, map, set, obj)
//
console.info({
  action: ‘get‘,
  mapExist: map.has(‘t‘),
  setExist: set.has(item),
  objExist: ‘t‘ in obj
})
//
map.set(‘t‘, 2)
item.t = 2
obj.t = 2
console.log(‘modify‘, map, set, obj)
//
map.delete(‘t‘)
set.delete(item)
delete obj.t
console.log(‘remove‘, map, set, obj)

 

ES6(十)map、set与数组和对象的比较

标签:add   cti   odi   let   dex   code   find   get   spl   

原文地址:https://www.cnblogs.com/ronle/p/11494891.html

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