es6的map对象和原生对象有啥区别

本教程操作环境:windows10系统、ECMAScript 6.0版、Dell G3电脑。

es6的map对象和原生对象有啥区别

区别

object和Map存储的都是键值对组合。但是:

  • object的键的类型是 字符串;
  • map的键的类型是 可以是任意类型;

另外注意,

  • object获取键值使用Object.keys(返回数组);
  • Map获取键值使用 map变量.keys() (返回迭代器)。

示例代码:

<!DOCTYPE html> <html>     
<head>         
<meta charset="utf-8" />         
<title>js es6 map 与 原生对象区别</title>     
</head>     
<body>         
<script type="text/javascript">             let a = {                 o: 1             };             
// string             
console.log(typeof Object.keys(a)[0]);             
let map = new Map();             
map.set(a, 'content');             
// 输出是object 也可以是任何类型             
console.log(map.keys().next());         
</script>     
</body> 
</html>

【相关推荐:javascript视频教程、web前端】

标签:

商匡云商
Logo
注册新帐户
对比商品
  • 合计 (0)
对比
0
购物车