一:相关背景
ES6未出现之前,js一直被各个语言诟病,因为作用域问题让开发者困扰。直到ES6的出现,让js语言上了一个全新台阶,ES6将弱类型语言提升到强弱类型语言。

二:相关语法
1.定义变量 let const
let是声明变量的关键字,特点如下:

a.不允许重复声明
ES6新增语法之真香

b.没有预解析阶段,不会被提升

c.自带独立的作用域,在大括号中声明的变量只能在大括号中使用

可以解决循环中定时器里使用变量的异步问题(类似闭包)

const是声明常量的,特点:

比let多一点,不允许重新赋值除了给对象新增属性,其他和let一样
ES6新增语法之真香

2.箭头函数
let fn=()=>{ };

用来简写函数的,当然不止这一个偷懒方法,当只有一个形参时连小括号都可以省略,如果代码块中只有一行代码时可以省略大括号,并返回这行代码

箭头函数中没有arguments

使用箭头函数时,this代表箭头函数外面的this,当你要使用外面的this时,建议用箭头函数,特别是在面向对象编程时,真香
ES6新增语法之真香

3.模板字符串
es6新增了定义字符串的方式,使用反引号

a.可以换行书写,保持字符串中的换行和空格(咋写咋输出)

b.还可以识别变量,使用${ };

相比于单双引号字符串,可以说反引号是多么的简单粗暴,一个字nb;

4.解构赋值
a.解构对象

之前的从对象中获取内容
ES6新增语法之真香

使用结构方式获取内容
ES6新增语法之真香

表示从Str对象中获取name属性,并赋值给声明的变量name

值得注意的是:

Str必须是一个对象,且这个对象中有name这个属性

解构对象还可以一次性结构多个对象和多级对象
ES6新增语法之真香

还可以将变量名换成自己喜欢的,比如把age换成height
ES6新增语法之真香

b.解构数组
ES6新增语法之真香

此时one代表数组中下标为0的值,即1,解构数组不像解构对象那样可以选择性解构,解构数组都是从数组下标0开始按顺序解构的

多维数组的解构
ES6新增语法之真香

我想肯定有人会觉得有点鸡肋,巧了,我也是

ES6新增语法之真香

不过还是有点用处的,就是交换两个变量的值

ES6新增语法之真香

5.展开运算符
使用 …变量

6.字符串语法
a: startWith( ) 是否以谁开头 ,返回布尔值

b: endWith( ) 是否以谁结尾 , 返回布尔值

c: includes( ) 判断一个字符串或数组是否包含指定的值

相关文章: