js中map和set使用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js中map和set使用相关的知识,希望对你有一定的参考价值。
参考技术A 1.数组转换成map键值对var m=new Map();
var arr=['a','b','v','r'];
for(var i=0;i<arr.length;i++)
m.set(arr[i],i)//转变成新的map键值对,也可以像原有键值对添加新得键值对,具有唯一性,当重复赋值,则会使用最后一个值
console.log(m) //"a" => 0,"b" => 1,"v" => 2,"r" => 3
console.log(m.get('a')) //查看键值对a的值 0
console.log(m.has('c')) //查看是否存在这个键值对,返回布尔类型的值 false
console.log(m.delete('r')) //删除r键值对 返回布尔类型 true
console.log(m) //"a" => 0,"b" => 1,"v" => 2
js的数组、对象、map、set存储数据
参考技术A 注意:对象的 __proto__ (原型链上的属性)和 constructor 属性,MyObject在obj的原型链上Set 没有键名,只有键值,不允许有重复值(敲黑板,画重点),重复的值是绝对相等(===),但是NaN和NaN是相等的值,两个对象总是不相等的。
key值相等,后者会覆盖前者,key值相等的概念是绝对相等(===),key值实际上是和内存地址绑定的,只要内存地址不一样,就默认是map的两个成员。
一定要仔细看看Map和Set中举的例子鸭
以上是关于js中map和set使用的主要内容,如果未能解决你的问题,请参考以下文章
js遍历集和(Array,Map,Set) (forEach, map, for, for...in, for...of)