老韩哥

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

{
// 优先考虑 map set 放弃 array object, 如果对数据要求比较高,数据唯一性 用set
//Map 与Array 的对比 增,查,改,删

let map = new Map()
let array = []

//增
map.set('a',1)
array.push({a:1})

console.info('map array',map,array)


//查
let map_exist = map.has('a')
console.log(map_exist)

let array_exist=array.find(item=>item.a)
console.log(array_exist)

//改
map.set('a',2)

array.forEach(item=>item.a?item.a=2:'')
console.info(map,array)

// 删除

map.delete('a')
let index = array.findIndex(item=>item.a)
array.splice(index,1)
console.info(map,array)


}


{
// Set 与Array 的对比 增,查,改,删

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

// 增
let item ={a:1}
set.add(item)
array.push({a:1})

console.info(set,array)

// 查
let set_exist = set.has(item)
let array_exist=array.find(item=>item.a)
console.log(set_exist,array_exist)

//改
set.forEach(item=>item.a?item.a=2:'')

array.forEach(item=>item.a?item.a=2:'')

console.log(set,array)

// 删

set.forEach(item=>item.a?set.delete(item):'')

let index = array.findIndex(item=>item.a)
array.splice(index,1)
console.info(set,array)

}

{
// Map Set object对比

let item ={a:1}

let map = new Map()
let set = new Set()
let obj = {}

// 增
map.set('a',1)
set.add(item)
obj['a']=1

console.log(obj,map,set)

// 查

let map_exist = map.has('a')
let set_exist = set.has(item)
let obj_exist='a' in obj

console.log(obj_exist,map_exist,set_exist)

// 改
map.set('a',2)
item.a=2
obj['a']=2

console.log(obj,map,set)

// 删
map.delete('a')
set.delete(item)
delete obj['a']

console.info(obj,map,set)

}

posted on 2020-05-01 13:17  老韩哥  阅读(155)  评论(0)    收藏  举报