博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ES6 数组解构赋值
阅读量:6264 次
发布时间:2019-06-22

本文共 1126 字,大约阅读时间需要 3 分钟。

1.数组解构let [a, b, c,d] = ["aa", "bb", 77,88]; alert(a) //弹出aa      可以用babel  解析看ES5的转换结果
嵌套数组解构 let [a,b,[c,d],e] =["aa",'bb',[33,44],55]; alert(c) //弹出33
空缺变量 let [a,b,,e] =["aa",'bb',[33,44],55]; //缺省可以以空格代替但是不能去掉占位的,
多余变量 let [a,b,,e,f] =["aa",'bb',[33,44],55]; alert(f); //弹出undefined 与变量f没有对应值,所以映射不过去
默认值 let [a,b,,e,f='hello'] =["aa",'bb',[33,44],55]; alert(f) //弹出给的默认值  但是 下面这种有值的情况给默认值是会被忽略的let [a,b,,e,f='hello'] =["aa",'bb',[33,44],55,66]; alert(f) //弹出给的66
2.对象解构 // let obj={uid:121,uname:'张三'};  //对象写法一let obj=new Object(); //对象写法二  obj.uid=111;   obj.uname='张三';   let {uid:id,uname:name}=obj; //顺序改变无影响 alert(name);  //弹出张三  这个也是创建一个变量,然后去映射出它的值
小括号let obj={uid:121,uname:'张三'};      let uid,uname;     ({uid,uname} = obj); //必须有小括号,否则{}就会被解读为语句块 alert(uname);;
3.字符串解构let[a, b, c, d] ="倚天屠龙"; console.log(a);  //弹出 倚
4.函数参数解构 let obj=new Object();     obj.uid=111;     obj.uname='张三'; function analysis({uid,uname}){     alert(uid);     alert(uname); } analysis(obj); //把刚开始定义obj对象传进去,然后里面会自动分配好你对象的值,你只需在传参数(形参)的时候注意对象的个数(实参)即可

 说的通俗一点就是 映射 将映射的值给拿出来用

转载于:https://www.cnblogs.com/Model-Zachary/p/6130798.html

你可能感兴趣的文章
Maven学习总结(十一)——Maven项目对象模型pom.xml文件详解
查看>>
yum -y upgrade 和 yum -y update 区别
查看>>
MySQL配置文件my.cnf中文版
查看>>
Linu系统远程访问Windows系统
查看>>
HTML5 开发者需要了解的技巧和工具汇总
查看>>
对比五种制作Linux系统的U盘启动盘的工具
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
持续部署,并不简单!
查看>>
并发,std::atomic 和 std::mutex 区别
查看>>
bash的配置文件
查看>>
C# ref 和 out
查看>>
我的友情链接
查看>>
VM虚拟机内存报警和vRealize Operations Manager 6.5部署
查看>>
SpringBoot事务注解@Transactional
查看>>
Solaris到2015年的发展路线图Roadmap
查看>>
Java 类加载和容器隔离
查看>>
【转】Oracle甲骨文公司2013财年第一季度利润同比增11% 数据库一体机Exadata和Cloud Service显“双塔”效应...
查看>>
问题6----关于协议适配器错误ORA-12560
查看>>
互联网企业网络安全架构摘录(转)
查看>>