ES6
变量声明
let
1.局部作用域
2.不能重复声明
3.不会变量提升
const
1.局部作用域
2.不能重复声明
3.不会变量提升
5.声明后不能修改*
6.建议变量名大写
解构
把对象或者数组解析为单独的变量
数组
用,分割可以跳过
...剩余值
给默认值
有顺序的
let[a,,b,,c,d=10,...res]=arr
对象解构
let{age,name,eye=2}=obj;
变量名和对象的键名保持一致无序的
字符串
模板
``包含字符串,${变量}
语义清晰;可以包含特殊字符串;保留换行
检测
includes是否包含
startsWith是否开头包含
endsWidth是否结尾包含
常见方法
repeat(n)把字符串重复n次
padstart(len,sub)把字符串用n填充len长度
padEnd(len,sub)从后面填充
函数
箭头函数
1.=>前是参数,后面是执行语句也是返回值
2.参数如果不是一个,需要用个()包裹
3.执行语句如果不是一行用()包裹
4.返回值如果是对象字面量形式用()包裹
5.箭头函数中的this指向函数的上一层作用域的this
默认参数
function(a=10){}
不定参
function fn(...arg){}
扩展参
调用参数时候,把数组扩展当参数传递
fn(...arr)