变量声明
let
1.存在局部作用域
2.不能重复声明
3.不会变量提升
const
1.存在局部作用域
2.不能重复声明
3.不会变量提升
4.声明必须赋值
5.声明不能修改(一般来说)
6.建议变量名大写
结构
1. 把对象或数组解析为单独的变量
2. 数组
用,分割可以跳过
...剩余值
可以给默认值
是有序的
let[a,,b,,c,d=10,...res]=arr;
3.对象结构
变量名和对象的键名保持一致是无序的
字符串
字符串模板 ``
includes() 是否包含
starsWith() 是否开头包含
endsWith() 是否结尾包含
repeat(n) 把字符串重复n次
padStart(len,sub) 把字符串用sub填充len的长度填充在字符串的前面
padEnd(len,sub) 把字符串用sub填充len的长度填充在字符串的后面
函数
箭头函数
1.=>前是参数,=>后执行语句也是返回值
2.参数如果不是一个,需要用个()包裹
3.执行语句如果不是一行用{}包裹
4.返回值如果是对象字面量形式用()包裹
5.箭头函数中的this指向上层作用域的this
默认参
function(a=100){}
不定参
function(...arg){}
扩展参
调用参数时候,把数组扩展后当参数传递
fn(...arr)