es6——map-set与对象对比

{    //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-object增',map,set,obj);
    }

console.info({    
map_exsit:map.has('t'),    
set_exist:set.has(item),    
obj_exist:'t' in obj
    })

//改   
 map.set('t',2);   
 item.t=2;    
obj['t']=2;    
console.info('map-set-object改',map,set,obj);

//删   
 map.delete('t');   
 set.delete(item);   
 delete obj['t'];    
console.info('map-set-object删',map,set,obj);

总结:object的语义性没有map和set好,map的使用成本较低 优先使用map,如果对数据的唯一性要求高,用set,放弃使用object做存储,数组也少用

posted @ 2019-05-10 20:29  ellenxx  阅读(473)  评论(0编辑  收藏  举报