严格模式 ("use strict")
作用:
- 消除Javascript语法的一些不合理,不严谨之处,减少一些怪异的行为。
- 消除代码运行的不安全之处,保证代码运行的安全。
- 提高编译器效率,增强运行速度。
加一句 use strict 就是手动开启。
es6的默认语法就是在严格模式下运行的。
严格模式下代码的区别:
- 不能遗漏声明
- 不允许8进制
- 不能在if语句中写函数体
- 不能重复声明
- arguments不能跟踪形式参数
- 在函数体内的this不能指向window
let和const
const相当于常量,let相当于变量
let特点 :
- 块级作用域,出了{}就不能用啦
- 暂时性死区。
3.没有变量提升 - 不会成为window的属性
- 不能重复声明
const特点 :
一旦定义就必须赋值
一旦赋值就不能改变
字符串扩展
- trim()方法(这个在es中就有啦)用来去除前后的空格。
- 模板字符串 格式:
${变量}
- repeat(n)方法 重复字符串n次
- Includes(字符串) 是否存在字符串,是返回true,否则false
- startsWith(字符串) 是否以字符串开始
- endsWith(字符串) 是否以字符串结束
- padStart(n,字符) 设置字符串的长度,字符串之前补满字符
- padEnd(n,字符) 同上,字符串之后补满字符
数组方法
Array.from 把类数组转成真正的数组,如:
let arr = Array.from(arguments)
Array.from 将一组值转换为数组
Fine 用于找出第一个符合条件的数组元素。找不到则是undefined
findIndex返回第一个符合条件的数组元素的索引。找不到则是-1
Includes 元素是否存在
Fill 填充数组,之前定义过的会被覆盖。
... 扩展运算符
箭头函数
es6新语法,减少代码量,用更少的代码去定义一个函数。
//如:
let f = (x) => {x*x}
几种简写的格式:
- 零个或多个参数不能少(),一个参数可以省略()
- 如果函数体内只有一句代码,可以省略{}
- 如果函数体只有一句代码,并且有return ,{}和return 可以省略
箭头函数的特点:
箭头函数没有自己的this,它的this表示外部的this