不完全结构
1.变量名比等号右侧值多,多出的变量名为undefined
1 <script>
2 let [a1,b1,c1] = [10,15]
3 console.log(a1,b1,c1);
4</script>
2.变量名比等号右侧的值少,且没有其他特殊处理的话,多出的值会被忽略
1<script>
2 let [a,b,c] = [10,15,17,23,31]
3 console.log(a,b,c);
4</script>
3.默认值,当等号左侧的变量设置了默认值,在等号右侧又可以找到匹配的值,那么变量的值使用等号右侧匹配的值
1<script>
2 let [a3,b3,c3='default'] = [10,15,'zhangsan']
3 console,log(c3);
4 let [test = 12] = [undefined];
5 console.log(test);
6 let [test1 = 12] = [null];
7 console.log(test1);
8</script>
4.剩余运算符(...),会将剩下的值以数组的方式存储到c2变量中
1<script>
2 let [a2,b2,...c2] = [10,15,17,23,31]
3 console.log(c2);
4</script>
对象的结构赋值
1<script>
2 let obi = {
3 name:"李四",
4 age:18,
5 sex:1,
6 study:function(){}
8 }
9 let obj1 = {
10 name:"李四",
11 age:18,
12 sex:1,
13 study:function(){}
14 }
15 let {name,age} = obj1
16 console.log(name);
17</script>
js运算符复习
运算符的分类
算术运算符
+ - * / % ++ --
比较运算符
< > >= <= != == ===
= == ===的作用跟区别
= 表示赋值,就是把等于号右边赋值给等号左边的变量
== 表示比较,如果两边的值相等,返回true,否则返回false,忽略数据类型
=== 表示比较,两边的值和数据类型都相同是,返回true,否则返回false
赋值运算符
= += -= /= %= *=
a+=b等价于a=a+b
逻辑运算符
&& 只是当两边的条件都为真时,征途返回true,其他情况全返回false
|| 只有当两边的条件为假时,整体返回false,其他情况返回true
| 非真既假 非假既真
字符串拼接运算,变量和字符串拼接
+
5+5 得 10
10+'5' 得 105