首页 > 作文

js中Map和Set的用法及区别实例详解

更新时间:2023-04-05 01:05:10 阅读: 评论:0

目录
首先了解一下 map再来了解一下 t总结map和t的区别结语:

首先了解一下 map

map 是一组键值对的结构,和 json 对象类似。

(1) map数据结构如下

这里我们可以看到的是map的数据结构是一个键值对的结构

(2) key 不仅可以是字符串还可以是对象

var obj ={name:"小如",age:9}let map = new map()map.t(obj,"111")

打印结果如下

(3) map常用语法如下

//初始化`map`需要一个二维数组(请看 map 数据结构),或者直接初始化一个空`map` let map = new map();//添加key和value值map.t('amy','女')map.t('liuqi','男')//是否存在key,存在返回true,反之为falmap.has('amy') //truemap.has('amy') //fal//根据key获取valuemap.get('amy') //女//删除 key为amy的valuemap.delete考研跨专业('amy')map.get('amy') //undefined  删除成功

(4) 一个key土地转让只能对应一个value,多次对一个key放入value,后面的值会把前面的值覆盖掉

var mapbonnie mckee =new mapmap.t('amy',"女")map.t('amy',"男")console.log(map) 

打印结果如下

再来了解一下 t

t 对象类似于数组,且成员的值都是唯一的

(1) 打印出的数据结跳蚤市场构如下

这里打印出来是一个对象

(2) 最常用来去重使用,去重方法有很多但是都没有它运行的快。

var arr=[1,3,4,2,5,1,4]// 这里原本是一个对象用了es6的语法 转化成了数组,就是转化数组之前已经过滤掉了重复的元素了var arr2=[...new t(arr)] //[1,3,4,2,5]

(3) t常用语法如下

//初始化一个t ,需要一个array数组,要么空tvar t = new t([1,2,3,5,6]) console.log(t)  // {1, 2, 3, 5, 6}//添加元素到t中t.add(7) //{1, 2, 3, 5, 6, 7}//删除t中的元素t.delete(3) // {1, 2, 5, 6, 7}//检测是否含有此元素,有为true,没有则为falt.has(2) //true

总结map和t的区别

(1) 这两种方法具有极快的查找速度;那么下面我们来对比一下map,t,array 的执行时间

//首先初始化数据var lng=100var arr =new array(lng).fill(2)var t =new t(arr)let map =new map()for(var i=0;i<lng;i++){arr[i]=imap.t(i,arr[i])}// arrayconsole.time()for(var j=0;j<lng;j++){arr.includes(j)}console.timeend()  //default: 0.01220703125 ms// tconsole.time()for(var j=0;j<lng;j++){t.has(j)}console.timeend()  // default: 0.005859375 ms// mapconsole.time()for(var j=0;j<lng;j++){map.has(j)}console.timeend()// default: 0.007080078125 ms

通过以上几种方法我们可以看到,t执行时间最短,那么查找速度最快,当然了t 和 map的查找速度都很快想差不大,所以说这两种方法具有极快的查找速度。

(2) 初始化需要的值不一样,map需要的是一个二维数组,而t 需要的是一维 array 数组

(3) map 和 t 都不允许键重复

(4) map的键是不能修改,但是键对应的值是可以修改的;t不能通过迭代器来改变t的值,因为t的值就是键。

(5) map 是键值对的存在,值也过去完成时练习题及答案不作为健;而 t 没有 value 只有 key,value 就是 key;

结语:

map 和 t 数据结构是es6语法,最大优点就是运行时间少大大提高了性能。

到此这篇关于js中map和t用法及区别的文章就介绍到这了,更多相关js中map和t用法区别内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!

本文发布于:2023-04-05 01:05:08,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/f3fdaf25f556701ae4bf111086ddb0c7.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:js中Map和Set的用法及区别实例详解.doc

本文 PDF 下载地址:js中Map和Set的用法及区别实例详解.pdf

标签:数组   初始化   的是   是一个
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图