中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ES6之map、set與數組、對象的對比示例

發布時間:2021-08-18 15:00:52 來源:億速云 閱讀:204 作者:小新 欄目:web開發

這篇文章給大家分享的是有關ES6之map、set與數組、對象的對比示例的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

前言

ES5中的數據結構,主要是用Array和Object。在ES6中主要新增了Set和Map數據結構。到目前為止,常用的數據結構有四種Array、Object、Set、Map。

// 數據結構橫向對比,增,查,改,刪

1、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-modify',map,array); 

 /**刪**/
 map.delete('t');
 let index=array.findIndex(item=>item.t);
 array.splice(index,1);
 console.info('map-array-empty',map,array);
}

2、set和數組對比

{
 let set=new Set();
 let array=[]; 
 
 // 增
 set.add({t:1});
 array.push({t:1});
 console.info('set-array',set,array);

 // 查
 let set_exist=set.has({t:1});
 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.info('set-array-modify',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-empty',set,array);
}

3、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.info('map-set-obj',obj,map,set); 

 // 查 
 console.info({
 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.info('map-set-obj-modify',obj,map,set); 

 // 刪除
 map.delete('t');
 set.delete(item); 
 delete obj['t'];
 console.info('map-set-obj-empty',obj,map,set);
}

 通過對比可以發現,能使用map的優先使用,不使用數組,

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

 以后的開發中可以優先考慮使用map和set了,并且可以放棄數組和object了

感謝各位的閱讀!關于“ES6之map、set與數組、對象的對比示例”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

揭阳市| 越西县| 大城县| 方城县| 缙云县| 万载县| 临颍县| 金湖县| 高阳县| 黄平县| 吉林省| 和政县| 安丘市| 柳州市| 甘孜| 清徐县| 绿春县| 垦利县| 儋州市| 苏州市| 长葛市| 大埔县| 洛扎县| 六盘水市| 浪卡子县| 白河县| 武定县| 岑巩县| 福安市| 新沂市| 台安县| 荔波县| 上蔡县| 青浦区| 梁河县| 莒南县| 如东县| 绥德县| 东阳市| 马关县| 樟树市|