本教程操作环境: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前端】