let 和 var 的差异
1.let 允许声明一个在作用域限制在块级中的变量、语句或者表达式,块级作用域 {}
var 声明的变量只能是全局或者整个函数块的
2.let 不能重复声明
3.let 不会被预解析
手册地址:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Statements/let
const 常量
1.常量不能重新赋值
2.不能重复声明
3.块级作用域
4.const 不会被预解析
手册地址:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Statements/const
解构赋值
a.对象解构:变量名 和 属性名 要对应
b.数组解构:变量名 和 值索引对应
手册地址:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment
1.对象的解构赋值
2.数组的解构赋值
3.字符串的解构赋值
...展开运算符
可以在函数调用/数组构造时, 将数组表达式或者string在语法层面展开;还可以在构造字面量对象时, 将对象表达式按key-value的方式
展开。(译者注: 字面量一般指 [1, 2, 3]或者 {name: "mdn"} 这种简洁的构造方式)
手册地址:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Spread_syntax
1.对象展开
2.数组展开
repeat重复
[...(".".repeat(10))]