let命令:
ES6中新增了let命令,用来声明变量。用法与var类似,但是用let声明的变量,只在let所声明的代码块内有效。let命令可以使js的语法规则更加严格。
const命令:
- const命令用来声明一个只读的常量。一旦声明,常量的值就不能够改变。
- const命令的作用域和let命令一样,只在所声明的块级作用域内有效。
箭头函数
- ES6允许使用箭头=>定义函数
- 当函数参数只有一个时,括号可以省略;但是没有参数时,括号不可以省略。
- 函数体(花括号)中有且只有一行return语句时,中括号及return 关键字可以省略。
注意:箭头函数是一种简写方式。
函数的参数默认值:
在ES6之前,我们往往这样定义参数的默认值:
在ES6中,我们可以这样写:
操作符…的使用:
- …就是Spread / Rest 操作符,具体是 Spread (展开)还是 Rest(可变数量参数) 需要看上下文语境。
- 当被用于函数传参时,是一个 Rest 操作符
对象的解构:
- 解构表示从数组和对象提取值并赋值给独特的变量。解构对象即获取对象中的属性值
- 解构数组即获取数组中的元素。
对象字面量简写
for…of循环:
for...of循环是最新添加到 JavaScript 循环系列中的循环。它结合了其兄弟循环形式 for 循环和 for...in 循环的优势,可以循环任何可迭代(也就是遵守可迭代协议)类型的数据。默认情况下,包含以下数据类型:String、Array、Map 和 Set,注意不包含 Object 数据类型(即 {})。默认情况下,对象不可迭代。
- for 循环的最大缺点是需要跟踪计数器和退出条件
- 当你需要向数组中添加额外的方法(或另一个对象)时,for…in 循环会带来很大的麻烦。因为 for…in循环循环访问所有可枚举的属性,意味着如果向数组的原型中添加任何其他属性,这些属性也会出现在循环中。
- for…of 循环将只循环访问对象中的值
类
- js语言中,生成实例对象的传统方法就是通过构造函数。
- ES6的class可以大致看做只是一种语法糖,它的绝大部分功能,ES5都可以看到,新的class写法只是让对象原型的写法更加清晰,更像面向对象编程语法而已。
类的getter和setter方法
- 在“类”的内部可以使用get和set关键字,对某个属性设置存值函数和取值函数,拦截该属性的存取行为。
类的静态方法
1. 类相当于实例的原型,所有在类中定义的方法,都会被实例继承。如果在一个方法前,加上static关键字,就表示该方法不会被实例继承,而是直接通过类来调用,这就称为“静态方法”
![在这里插入图片描述]()
类的继承:
1. ES6中的类也可以继承。
模板字符串(一)
1. 在使用JS代码输出HTML代码时,往往需要拼接一个HTML字符串。这种做法需要使用大量的引号和+进行拼接才能得到我们需要的模版,显然是十分不方便的。
模板字符串(二)
- ES6中提供了模版字符串,用`(反引号)标识,用${}将变量括起来。
模板字符串(三)
不运行下面的代码,说出下面两行代码的运行结果。