const {attr} = obj

 

 const {attr} = obj 等同于 const attr = obj.attr,是ES6用法。

 

/*
 * 第一,能少写一次 attr。
 * 使得代码量更少,更优雅。
*/

/*
 * 第二,减少Cannot read property xxx of undefined 类型的错误
 * 万一你的obj是undefined,如果这样写const attr = obj.attr 就炸了。
*/
const {attr} = obj //等同于 
const {attr} = obj || {}

/*
 * 第三,可以同时定义多个变量
*/
const {attr1, attr2, attr3} = obj  //等同于

const attr1 = obj.attr1
const attr2 = obj.attr2
const attr3 = obj.attr3

/*
 * 第四,可以默认结构值,解构出的undefined值可以被默认值覆盖
*/
const {attr1 = '', attr2 = 1, attr3 = true} = obj

 

上一篇:xml -- forearch遍历用法


下一篇:ASP.NET jQuery attr()和prop()方法应用举例---实现选择与交换