(精华)2020年7月3日 JavaScript高级篇 ES6(Map数据结构)
【摘要】
Map是什么
// map??? // es6 新提出的一种引用类型的数据结构 类似于对象 // 字符创-》值 值-》值
声明Map数据结构
const map = new Map()
const ...
Map是什么
// map???
// es6 新提出的一种引用类型的数据结构 类似于对象
// 字符创-》值 值-》值
声明Map数据结构
const map = new Map()
const o = {p:'hello'} // 相当于键 key
map.set(o,'content') // var a = {} a.name = '张三' a.name
console.log(map.get(o));
证明是引用数据类型
// null
typeof null
const map = new Map()
console.log(map instanceof Map); // true
console.log(Object.prototype.toString.call(map) === '[object Map]');
接收数组作为参数
const map = new Map( [
['name','张三'],
['age',18]
])
console.log(map.get('name')); // 张三
console.log(map.get('age')); // 18
// map 是数组的方法 Map 是es6新提出的一种新的 引用类型的数据结构
const m = new Map(
[
[123,'abc'],
['a',{x:1,y:2}],
[3>1,666]
]
)
console.log(m.get(true)); // 666
// 404 Not found 500 InterError 404和500 都是数值
let errors = new Map([
[404,'Not found'],
[500,'InterError']
])
// 注意 对象作为键名 传输的是地址
// let m1 = new Map([
// [123,'abc'],
// [{x:1},'cdf']
// ])
// console.log(m1.get({x:1})); // undefined
let obj1 = {x:1}
let m1 = new Map([
[123,'abc'],
[obj1,'cdf']
])
console.log(m1.get(obj1)); // cdf
Map接收数组作为参数的本质
// 为什么 接收一个二元数组 key value的形式 就可以通过 map.get()获取到值呢
const array = [
['name','张三'],
['age',18]
]
const map = new Map()
array.forEach(
([key,value])=>map.set(key,value)
)
Map参数的扩展
// 具有迭代器 iterator 接口 每个成员都是双元素的数组的数据结构 都可以当做map构造函数的参数
文章来源: codeboy.blog.csdn.net,作者:愚公搬代码,版权归原作者所有,如需转载,请联系作者。
原文链接:codeboy.blog.csdn.net/article/details/107116203
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)