ES6语法简介——5解构赋值
Posted luuuu0225
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES6语法简介——5解构赋值相关的知识,希望对你有一定的参考价值。
5、解构赋值(一)
5.1、对象解构
在ES6中,对象和数组可以使用解构功能,可以按照一定模式从对象和数组中提取值,对变量进行赋值。对象解构是在一个赋值操作符的左边放置一个对象字面量。
例:
let book={ title:"九章算术", isbn:"987654321", price:108 } let {title,isbn,price}=book; console.log(title);//输出:九章算术 console.log(isbn); //输出:987654321 console.log(price);//输出:108在例中book.title的值存储在名为title的变量中。
注意:如果使用var、let或者const解构声明变量,必须提供初始化程序,即等号右边必须提供值,否则会导致语法错误。
例:
var {title,isbn,price}; let {title,isbn,price}; const{title,isbn,price};
如果变量之前已经声明了,那么需要使用圆括号把整个解构赋值语句包起来。
例:
let title,isbn,price; ({title,isbn,price})=book;
使用解构赋值表达式的时候,如果指定的局部变量名称在对象中不存在,这个局部变量会被赋值为undefined(未定义),可以考虑为这个变量定义一个默认值,在变量名称后面加一个等号和相应的默认值即可。
例:
let {title,isbn,salesVolume=0} = book;//上面案例中book对象没有salesVolume属性
如果希望再使用解构赋值时,使用与对象属性名不同的局部变量名称,可以采用“属性名:局部变量名”的语法形式。
例:
let {title:booktitle,isbn:bookisbn} = book; //读取title属性的值存储在变量booktitl中,注意右边变量名,左边要读取的对象的属性名。
以上是关于ES6语法简介——5解构赋值的主要内容,如果未能解决你的问题,请参考以下文章