一、什么是ES6?和JavaScript的关系。
ES就是ECMA(European Computer Manufacturers Association),即欧洲计算机抄制造商袭协会。百欧洲计算机制造商协会是制定信息传输与度通讯的国际化标准组织。
ES=ECMAScript 是一个动态脚本语言的【标准】;
JS=JavaScript 是对ES的标准、默认、主流的【实现】;
ES该标准从一开始就是针对JavaScript语言制定的,但是之所以不叫JavaScript,有两个原因。一是商标,Java是属于Sun公司的商标,只有Netscape公司可以合法地使用JavaScript这个名字。且JavaScript本身也已经被Netscape公司注册为商标。二是想体现这门语言的制定者是ECMA,不是Netscape,这样有利于保证这门语言的开放性和中立性。
二、var、let、const的区别
var:
1.可以重复修改
2.无法限制修改
3.函数作用域(全局)
let:
1. 不能重复声明
2. 变量(可以修改)
3. 块级作用域(局部)
注意:
①.尽量少用var ,优先用let。var没有封装,容易覆盖和混淆代码。
②let严格遵守代码顺序,var声明的变量,会忽略声明的顺序
const :
1. 不能重复声明
2. 常量(不能修改)
3. 块级作用域(局部)
对象的值属性能变,对象的地址不能变
三、ES6 Map 与 Set
Map:
- 值:对象保存键值对。任何值(对象或者原始值) 都可以作为一个键或一个值。
- size:返回Map对象中所包含的键值对个数
- set(key, val): 向Map中添加新元素
- get(key): 通过键值查找特定的数值并返回
- has(key): 判断Map对象中是否有Key所对应的值,有返回true,否则返回false
- delete(key): 通过键值从Map中移除对应的数据
- clear(): 将这个Map中的所有元素删除
遍历方法:
- keys():返回键名的遍历器
- values():返回键值的遍历器
- entries():返回键值对的遍历器
- forEach():使用回调函数遍历每个成员
Set:
- 值:对象允许你存储任何类型的值,唯一 没有重复。无论是原始值或者是对象引用。类似数值。
- constructor:构造函数,默认就是Set函数。
- size :返回Set实例的成员总数。
- 操作方法:
- add(value):添加某个值,返回Set结构本身。
- delete(value):删除某个值,返回一个布尔值,true表示删除成功。
- has(value):判断值是否存在,返回布尔值。
- clear(); 清除所有成员,没有返回值。