ES6之地图,设置与数组,对象的对比示例

  介绍

这篇文章给大家分享的是有关ES6之地图,设置与数组,对象的对比示例的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

<强>前言

ES5中的数据结构,主要是用数组和对象。在ES6中主要新增了设置和地图数据结构。到目前为止,常用的数据结构有四种数组对象,设置,地图。

//数据结构横向对比,增、查、改、删

<强> 1,地图和数组对比

{,   ,let 地图=new 地图();   数组,let =[];/* *增* */,map.set (& # 39; t # 39;, 1);   t: 1, array.push ({});   ,console.info (& # 39; map-array& # 39;,地图,数组),,/* *查* */,let  map_exist=map.has (& # 39; t # 39;);   ,let  array_exist=array.find(项=祝辞item.t);   ,console.info (& # 39; map-array& # 39;, map_exist, array_exist),,/* *改* */,map.set (& # 39; t # 39; (2);   ,array.forEach(项=祝辞item.t ? item.t=2: & # 39; & # 39;);   ,console.info (& # 39; map-array-modify& # 39;,地图,数组),,/* *删* */,map.delete (& # 39; t # 39;);   ,let 指数=array.findIndex(项=祝辞item.t);   ,array.splice(指数(1);   ,console.info (& # 39; map-array-empty& # 39;,地图,数组);   }

<强> 2,设置和数组对比

{   ,let 集=new 集();   ,let =[]数组,   ,   ,//增   t: 1, set.add ({});   t: 1, array.push ({});   ,console.info (& # 39; set-array& # 39;,,数组);      ,//查   ,let  set_exist=set.has ({t: 1});   ,let  array_exist=array.find(项=祝辞item.t);   ,console.info (& # 39; set-array& # 39;, set_exist, array_exist),,      ,//改   ,set.forEach(项=祝辞item.t ? item.t=2: & # 39; & # 39;);   ,array.forEach(项=祝辞item.t ? item.t=2: & # 39; & # 39;);   ,console.info (& # 39; set-array-modify& # 39;,,数组),,   ,   ,//删   ,set.forEach(项=祝辞item.t ? set.delete(项):& # 39;& # 39;);   ,let 指数=array.findIndex(项=祝辞item.t);   ,array.splice(指数(1);   ,console.info (& # 39; set-array-empty& # 39;,,数组);   }

<强> 3,地图,设置和对象对比

{,   t: 1, let 项={};   ,let 地图=new 地图();   ,let 集=new 集();   ,let  obj={},      ,//增   ,map.set (& # 39; t # 39;, 1);   ,set.add(项);   ,obj [& # 39; t # 39;]=1;   ,console.info (& # 39; map-set-obj& # 39;, obj,地图,集),,      ,//查,   ,console.info ({   ,map_exist: map.has (& # 39; t # 39;),   ,set_exist: set.has(项),   ,obj_exist: & # 39; t # 39; obj拷贝   })大敌;      ,//改   ,map.set (& # 39; t # 39; (2);   ,item.t=2;   ,obj [& # 39; t # 39;]=2;   ,console.info (& # 39; map-set-obj-modify& # 39;, obj,地图,集),,      ,//删除   ,map.delete (& # 39; t # 39;);   ,set.delete(项),,   ,delete  obj [& # 39; t # 39;];   ,console.info (& # 39; map-set-obj-empty& # 39;, obj,地图,集);   }

通过对比可以发现,能使用地图的优先使用,不使用数组,

考虑数据的唯一性,考虑使用,不使用垃圾箱里

以后的开发中可以优先考虑使用地图和设置了,并且可以放弃数组和对象了

感谢各位的阅读!关于“ES6之地图,设置与数组,对象的对比示例”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

ES6之地图,设置与数组,对象的对比示例