作者:狮子胯下 | 来源:互联网 | 2023-10-10 15:46
主要内容:let、const与解构赋值
- let和const声明
- let 与 const 相同之处
- a. 禁止重复声明
- b. 支持块作用域
- c. 不同之外,let允许更新, 而const禁止更新
- var/let/const在全局作用域绑定上的区别
- var会成为全局变量,从而污染全局环境。可以通过命名空间来解决这个问题
- let、const则没有这个问题
- 解构:主要是针对对象和数组
- 解构的目的: 将集合数据按规则打散到一些独立的变量中
- 嵌套对象解构
- 其他两个点
- 貌似对象都是{},数组都是[]
- console.log,外还有console.dir, console.table
1. let声明
lang="en">
charset="UTF-8" />
name="viewport" content=" />
itme1
itme2
itme3
itme4
itme5
2. const
lang="en">
charset="UTF-8" />
name="viewport" content=" />
3. var/let/const在全局作用域绑定上的区别
lang="en">
charset="UTF-8" />
name="viewport" content=" />
4. 对象解构
lang="en">
charset="UTF-8" />
name="viewport" content=" />
5. 嵌套对象解构
lang="en">
charset="UTF-8" />
name="viewport" content=" />
6. 数组解构
lang="en">
charset="UTF-8" />
name="viewport" content=" />
7. 作业(在上面基础上修改的)
- 实例演示let ,const功能与应用场景,并分析异同
- 实例演示对象解析与数组解构的语法,应用场景
下面内容结合网上内容应用了下
(https://www.runoob.com/w3cnote/deconstruction-assignment.html)
在解构中,有下面两部分参与:
解构的源,解构赋值表达式的右边部分。
解构的目标,解构赋值表达式的左边部分。
基本型
let [a, b, c] = [1, 2, 3];
// a = 1
// b = 2
// c = 3
可嵌套
let [a, [[b], c]] = [1, [[2], 3]];
// a = 1
// b = 2
// c = 3
可忽略
let [a, , b] = [1, 2, 3];
// a = 1
// b = 3
不完全解构
let [a = 1, b] = []; // a = 1, b = undefined
剩余运算符
let [a, ...b] = [1, 2, 3];
//a = 1
//b = [2, 3]
字符串等
let [a, b, c, d, e] = 'hello';
// a = 'h'
// b = 'e'
// c = 'l'
// d = 'l'
// e = 'o'
解构默认值
let [a = 2] = [undefined]; // a = 2
对象的解构有很多类似的地方