最新要闻
- 恩施市教育局电子政务系统(恩施市教育局电子政务登录)
- tom ford男友(sufjan stevens男朋友)_头条焦点
- 全球通讯!“宗”这个字应该如何正确读音?
- 董明珠:格力空调10年免费包修 对手不敢这么做
- 天玑9200手机出手 5G上行速度跑出440Mbps新纪录-世界热点
- 每日看点!扎克伯格批苹果Vision Pro头显:社交属性太差 不如跟Meta
- 梅西打义乌厂商措手不及:迈阿密新队服来不及生产 每日时讯
- 北大屠夫称大学生就业难关键在父母:大学生是普通教育 不要把自己当精英 世界播报
- 今日观点!医保卡_医保卡里的钱可以取出来吗
- qq用手机怎么设置空白名字_手机qq怎么弄空白名字
- 当前速看:【机构调研记录】凯石基金调研江苏雷利
- pxo理论_pxo-全球动态
- runningman超能力特辑第二季_running man超能力特辑|今亮点
- 泰国(硬盘)
- 人类首次!我国科研人员监测到伽马射线暴全过程:来自20多亿年前
- 今热点:iOS 17体验评测:20条Bug 9个变化 不值得升级
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
每日动态!Map
简介
Map -- JS内置对象
Map对象保存键值对 -- 能够记住键的原始插入顺序 -- 任何值(数据类型包括对象)都可以作为一个键或一个值
Map对象是键值对的集合 -- Map中的一个键只能出现一次
(相关资料图)
Map对象按键值对迭代 -- for...of循环在每次迭代后会返回一个形式为[key,value]的数组
let map = new Map([ [1, "liu"], [2, "hei"], [3, "may"]]);for (const item of map) { console.log(item); // [1,"liu"] [2,"hei"] [3,"may"]}
Map可以在内部表示为复杂度小于O(N)的任何数据结构 -- 包括哈希表(O(1)查找)、搜索树(O(log(N))查找)
创建Map对象
语法
iterable -- Map对象的一个元素 -- 是键值对的数组或是其他可迭代对象
new Map() //创建空对象new Map(iterable) //创建带有元素的对象
创建新Map
const map = new Map([[1,"one"],[2,"two"],[3,"three"],]);console.log(map);
实例属性
Map.prototype.size
size -- 只读属性 -- 不能修改 -- 值是一个整数 -- 表示Map对象有多少个键值对
const map = new Map([[1,"one"],[2,"two"],[3,"three"],]);console.log(map.size);//3
实例方法
Map.prototype.clear()
clear() -- 移除Map对象中的所有元素
const map = new Map([ [1, "one"], [2, "two"], [3, "three"],])console.log(map.size); //3map.clear();console.log(map.size); //0
Map.prototype.delete()
delete() -- 移除Map对象中指定的元素
语法--delete(key)
key -- 要从Map中删除的元素的键
返回值 -- Map对象中的元素存在且已被移除 - 返回true;若元素不存在 - 返回false
const map = new Map([ [1, "one"], [2, "two"], [3, "three"],])console.log(map.delete(1)); //trueconsole.log(map.delete(5)); //falseconsole.log(map); //Map(2){2 => "two", 3 => "three"}
Map.prototype.get()
get() -- 从Map对象中返回指定的元素
若与该键相匹配的值是一个对象 -- 会获得对该对象的引用 -- 可用在Map对象中修改它
语法 -- get(key)
key -- Map对象返回的元素的键
返回值 -- 与该键相匹配的值 -- 若该键在Map对象中不存在 -- 返回undefined
const map = new Map([ [1, "one"], [2, "two"], [3, "three"], [4, []]])console.log(map.get(1)); //oneconsole.log(map.get(10)); //undefinedmap.get(4).push("four")console.log(map.get(4)); //["four"]
Map.prototype.has()
has() -- 返回一个布尔值 -- 判断具有指定键的元素是否存在
语法 -- has(key)
返回值 -- 若Map对象中存在具有指定键的元素 -- 返回true ;否则返回false
const map = new Map([ [1, "one"], [2, "two"], [3, "three"], [4, []]])console.log(map.has(1)); //trueconsole.log(map.has(6)); //false
Map.prototype.set()
set() -- 为Map对象添加或更新一个指定键和值的新键值对
语法 -- set(key,value)
返回值Map对象
const map = new Map([ [1, "one"], [2, "two"], [3, "three"], [4, []]])map.set("a", "A");map.set(4, "four")console.log(map.set("b", "B"));
链式使用set
map.set("c", "C") .set("d", "D") .set("e", "E")console.log(map);
Map.prototype.entries()
entries() -- 返回一个新的迭代器对象 -- 包含Map对象中按插入顺序排序的每个元素的键值对
迭代器对象也是一个可迭代对象 -- 可使用for-of循环
语法 -- entries
返回值 -- 一个新的Map迭代器对象
const map = new Map([ [1, "one"], [2, "two"], [3, "three"], [4, []]])let iter = map.entries();console.log(iter.next().value);console.log(iter.next().value);console.log(iter.next());
Map.prototype@@iterator
@@iterator -- 初始值与entries属性的初始值是同一个函数对象
语法 -- map[Symbol.iterator]
返回值 -- Map的iterator函数默认是entries()函数
let iter = map[Symbol.iterator]();console.log(iter.next().value); //[1, "one"]console.log(iter.next().value); //[2, "two"]console.log(iter.next().value); //[3,"three"]
在for...of中使用
for (const entry of map) { console.log(entry);}
Map.prototype.keys()
keys() -- 返回一个引用的迭代器对象 -- 包括按顺序插入Map对象中每个元素的key值
语法 -- keys()
返回值 -- 一个新的迭代器对象
let iter = map.keys()console.log(iter.next().value); //1console.log(iter.next().value); //2console.log(iter.next().value); //3
Map.prototype.values()
values() -- 返回一个新的的迭代器对象 -- 包括按顺序插入Map对象中每个元素的value值
语法 -- values()
返回值 -- 一个新的迭代器对象
let iter = map.values()console.log(iter.next().value); //oneconsole.log(iter.next().value); //twoconsole.log(iter.next().value); //three
Map.prototype.forEach()
forEach() -- 安装插入顺序依次对Map中每个键值对执行一次给定的函数
语法
forEach(callbackFn)forEach(callbackFn,thisArg)
- callbackFn --Map中每个元素要执行的函数 -- 有如下参数 -- 都是可选
- value -- 每个迭代的值
- key -- 每个迭代的键
- map -- 每个迭代的Map
- thisArg -- 在callbackFn执行中使用的this的值
返回值undefined
- 注意
- forEach方法会对 map 中每个真实存在的键执行一次给定的 callbackFn函数。它不会对被删除的键执行函数。然而,它会对每个值为 undefined的键执行函数
- 每个值只被访问一次,除非它在 forEach结束前被删除并被重新添加。callbackFn不会对在被访问前就删除的元素执行。在 forEach结束前被添加的元素都将会被访问
function logMapElements(value, key, map) { console.log(`map.get("${key}") = ${value}`);}new Map([ ["foo", 3], ["bar", {}], ["baz", undefined]]).forEach(logMapElements)
关键词:
每日动态!Map
恩施市教育局电子政务系统(恩施市教育局电子政务登录)
tom ford男友(sufjan stevens男朋友)_头条焦点
全球通讯!“宗”这个字应该如何正确读音?
董明珠:格力空调10年免费包修 对手不敢这么做
天玑9200手机出手 5G上行速度跑出440Mbps新纪录-世界热点
每日看点!扎克伯格批苹果Vision Pro头显:社交属性太差 不如跟Meta
梅西打义乌厂商措手不及:迈阿密新队服来不及生产 每日时讯
北大屠夫称大学生就业难关键在父母:大学生是普通教育 不要把自己当精英 世界播报
今日观点!医保卡_医保卡里的钱可以取出来吗
qq用手机怎么设置空白名字_手机qq怎么弄空白名字
当前速看:【机构调研记录】凯石基金调研江苏雷利
RTOS测试(韩国方案)
pxo理论_pxo-全球动态
runningman超能力特辑第二季_running man超能力特辑|今亮点
泰国(硬盘)
【读财报】年初以来99单IPO项目终止:海通证券数量居首,华金证券撤否率最高
人类首次!我国科研人员监测到伽马射线暴全过程:来自20多亿年前
今热点:iOS 17体验评测:20条Bug 9个变化 不值得升级
每日热门:学生打架老师要求用英语复述过程 两人散装英语让网友笑趴
福建福州:智能服务机器人产销两旺
华电国际:6月8日融券卖出80.13万股,融资融券余额2.83亿元
目标永兴岛 航程900海里 “海巡03”轮首次巡航西沙海域
环球观热点:全能型锋线大将试训勇士,他是双向合同的理性选择?
世界微资讯!半年91家公司涨幅翻倍!林园、谢治宇、赵建平三位大佬谁抓了超级牛股?
【世界快播报】Oil-Dri Corp of America(ODC.US):2023年Q3财报实现营收1.054亿美元
单硫型水化硫铝酸钙英文_单硫型水化硫铝酸钙_世界焦点
江西铜业:业绩说明会定于6月15日举行
天天观焦点:qq三国国战时间表2021_qq三国国战时间
研报存多项问题,招商证券及4名分析师被出具警示函_环球视点
中超联赛有观众使用激光笔向球场照射,中国足协公布处罚决定
商汤:公司B类普通股股份人民币柜台将自6月19日起推出_当前关注
世界新消息丨坚守“全球车标准”,第4代帝豪2023冠军款上市
热头条丨大北农:定增募资不超19.43亿元申请获深交所审核通过
lol全球总决赛s6 lol全球总决赛视频回放)
高中生期末班主任评语大全(高中生期末班主任评语)
高考英语不会的可以选C 苹果:我是Ctrl+C 报道
海航管控空姐体重 超重停飞引热议:这不在监管标准内 其他航空公司不跟进
临港新片区与7家QFLP试点管理企业签署合作备忘录-世界信息
全球微头条丨A股共75只个股发生大宗交易 派特尔溢价率27.65%居首
全球速看:我之前一直在跟新入行的师弟师妹说,趁年轻学习能力强,抓紧时间转行吧!
50道常见高频大厂面试题-微资讯
读改变未来的九大算法笔记07_搜索引擎
安装指定版本的mysql(安装mysql5
A股IPO动态:豪江智能(301320.SZ)等三股今日上市 今日关注
金融工程主要学什么科-全球要闻
今日热门!突发!中国电信全省崩溃,发生了什么?利好不断,A股明天要起飞?
全球热讯:宁时的意思_凝视的意思
商汤-W(00020):增设B类股份人民币柜台 环球热议
【新视野】深夜22点,埃格努宣布意外决定,蔡斌渔翁得利,中国女排喜出望外
全球热门:打工人狂喜!微信PC版3.9.5正式发布:锁定功能上线
竟内置华为服务套件 800块山寨机用起来到底咋样? 焦点短讯
代驾师傅雨中救下跳河女子 滴滴:奖励3000元现金-世界微动态
独立显卡10年来最惨!AMD再不努力 Intel就追上了-微速讯
《变形金刚7:超能勇士崛起》今日上映:终极BOSS宇宙大帝登场_看热讯
惠民保2023:保障升级持续拓面,短期内不会“凉凉”
世界观速讯丨通知!放假3天!陕西多地明确:明起,免费!
凝聚汽车产业高质量发展智慧 2023中国汽车重庆论坛开幕 焦点热闻
讯息:我是中国人诗歌朗诵搭配视频 我是中国人诗歌
要式证券属于侠义票据的特征 要式证券
盐城515人才申请入口(盐城515) 环球头条
央行连续7个月 加仓 机构称当前黄金站在十年牛市起点
小鹏汽车-W(09868.HK):6月8日南向资金增持22.82万股
家用太阳能灯光伏板充电使用方法(家用太阳能灯能用多久)
张爱玲的读书规则:全凭兴趣
物业销售结转缩减 产业园区复常的几大抓手
【独家】贝达药业:伏罗尼布片获批上市
环球快看点丨想起我叫什么了吗by漫漫何其多下载 想起我叫什么了吗by漫漫何其多
汽车上passenger灯亮(passenger灯亮是什么意思?)_今日播报
直面行业痛点,银河L7通过4项整车级电池安全测试
在外打工受伤没劳动合同怎么赔偿
世界微速讯:V观财报|光正眼科收年报问询函:毛利率存持续下滑风险?
《可持续发展经济学》新书发布会举行_当前简讯
图灵看市6.8晚-黄金短期修复、空头将测试前低 当前热闻
皮阿诺:业绩说明会定于6月13日举行_精彩看点
航旅需求强劲 新西兰航空上调全年盈利预期
北京22家校企共建集成电路产教联合体
东方嘉盛:公司计划加速拓展新能源汽车及智能制造物流服务业务 观点
在过二十年我们来相会歌词(再过二十年我们来相会歌词)_每日播报
天天短讯!支出凭证汇总单写法_支出凭证
“牧民转场服务队”为新疆牧区转场保驾护航(图)
文雅新世界二期属于哪个社区(文雅新世界)|环球微头条
20年“老慢支”顽疾竟是肺内古董在作祟
今日讯!我的世界鱼竿附魔教程 我的世界鱼竿附魔
“才聚荆楚·百日千万招聘”举行首场线下招聘会
直面行业痛点,银河L7通过4项整车级电池安全测试|当前观察
海得控制:拟以12.78亿元收购行芝达75%股权
6月08日擒牛姐复盘
微资讯!蔷薇花图片简笔画彩色 蔷薇花图片简笔画
热点评!祖本三十六计(关于祖本三十六计介绍)
观速讯丨本色联盟(关于本色联盟的基本详情介绍)
胆囊壁结晶需要治疗吗_胆囊结晶最好消除法|环球观焦点
陕西有二本院校排名 其他信息:
武汉邓南振兴街社区开展安全生产月宣传活动-全球热文
建行吴忠分行:助力高考,护航学子追梦 天天视讯
磷酸铁锂VS三元锂,动力赛道的王对王,哪款更适合你? 每日短讯
加拿大在空气污染中迎来“清洁空气日” 医院为患者可能增加做准备_天天看点
【全球新视野】宜宾购房补贴政策又有新动向!
工程项目甩项报告内容怎么写_ldquo 甩项竣工 rdquo 是什么
贷款担保人可以做贷款担保吗