ES6學習之map-set與數組和對象的比較

let map=new Map();
  let set=new Set();
  let array=[]; 
  let obj={}

  let a={t:1}



  /**增**/
  map.set('t',1);
  set.add(a);
  obj['t']=1;
  array.push({t:1});




  /**查**/
  map.has('t');
  set.has(a);
  't' in obj;
  
  
  !!array.find(item=>item.t);      
  /**或(ES5)**/
  array.some(item=>item.t);
  !(array.indexOf(a)===-1);



  /**改**/
  map.set('t',2);
  set.forEach(item=>item.t?item.t=2:'');
  obj['t']=2;
  array.forEach(item=>item.t?item.t=2:'');



  /**刪**/
  map.delete('t');
  set.delete(a)
  /**或**/
  set.forEach(item=>item.t?set.delete(item):'');   
  
  delete obj['t'];
  
  let index=array.findIndex(item=>item.t);
  array.splice(index,1);
 經過對比能夠發現,能使用map的優先使用,不使用數組,

 考慮數據的惟一性,考慮使用set,不使用Objet數組

 之後的開發中能夠優先考慮使用map和set了,而且能夠放棄數組和object了code

相關文章
相關標籤/搜索