<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
// 注意:花括号放在行首被认为不是对象,除非你加括号或者不要放在行首,如下:
let x1,x2;
({x1,x2}={x1:1,x2:2})
// 如果后面的值不够,或定义为undefind,则s会使用默认值5
let [x,y,n,s=5]=[1,2,3];
// 如果变量名和属性名一样,可以直接省略写法
//let {name:name,age:age}={name:"珠峰",age:10}原本应该这样写
let {name,age}={name:"大海",age:10}
console.log(name,age);//大海,10
// 如果后面的ag不存在,或定义为undefind,则ag会使用默认值ag
let {nam,ag=10}={nam:"大海",ag:100}
console.log(nam,ag);//大海,100
// 使用数组的解构赋值形式,如果等号右边不是数组,会被默认转化为类数组对象,必须有一个length属性
let [a,b]="357";
console.log(a,b);//3,5
//使用对象的解构赋值,如果等号右边不是对象,默认转化为对象,再进行解构赋值。
let {c}=1;
console.log(c);
console.log(object(1));//{__proto__:}
// 关于函数的结构赋值有空再写,有点事
// 2018年12月28日22:15分,我刚刚得知一个悲痛的消息,有一位亲人永远的离我而去!!!T_T
// 你受苦了,丹彩,你才28岁。我们永远不会忘记你。每个人也都有这么一天。
// 希望生活善待每一个人,希望每个人都健康。珍惜生命,珍惜当下,珍惜身边的人,尤其是自己的亲友们。
// author:Kason
</script>
</body>
</html>
2018-12-28关于ES6的解构赋值
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 解构赋值 es6为我们对变量赋值提供了新的方式. **方式1 : ** 方式2 : **本质是上述匹配属于一种模式...
- 当我们定义多个变量的时候还要一个一个去命名的和赋值,很麻烦。用结构赋值那么就是: 他会默认的吧右边赋的值都解出来分...