💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
# 解构语法 <br> ### 1.对象 ``` <script> // 定义个obj变量 let obj = { name:'zs', age:3, sex:'男' }; //完全解构 //定义个变量等于对象里面的属性 //写法一 直接分开定义个变量名等于对象里面的属性 /* let name = obj.name; let age = obj.name; let sex = obj.sex;*/ //写法二,一次性定义完全部的变量 //格式 let {变量名(要跟对象里面的属性名一致)} = 对象名 // let {name,age,sex} = obj; // console.log(name, age, sex);// zs 3 男 // // 部分解构 //部分解构的顺序可以调换 // let {name,sex} = obj; // console.log(name, sex); //假设之前已经定义个一个跟对象里面的属性名一样的变量,可以对解构的变量名进行重命名,使用:重命名 let name = 'zzzzz'; let {name:myname,age}=obj; console.log(name);//zzzzz console.log(myname);//zs console.log(age);//3 </script> ``` ### 2.数组跟字符串 <br> ``` <script> //数组的解构跟对象的解构同理 let arr= [10,20,30]; //完全解构 //语法 let [变量名(会跟数组的索引值一致)] = 数组变量 let [a,b,c] = arr; console.log(a, b, c);//10 20 30 //部分解构 let [aa] = arr; console.log(aa);//10 //获取数组最后一个元素,前面的元素用逗号隔开(一个逗号代表一个元素) let [,,cc] = arr; console.log(cc);//30 //复合数组的解构 格式要一致 let arr1 = [10, 20, 30, [100, 200, 300]]; let [i,j,k,[ii,jj,kk]] = arr1; console.log(i, j, k, ii, jj, kk);//10,20,30,100,200,300 //字符串解构 跟数组的解构相同 let str = 'like'; //完全解构 let [m,n,o,p] = str; console.log(m, n, o, p);// l i k e //获取字符串的元素 console.log(str[0]);//l str[1] = 'h';//对第二个字符进行更改, console.log(str);//like 更改不成功,但是不会报错 </script> ```