变量的解构赋值

数组解构赋值

eq: let[aa,bb,cc]=[1,2,3];

按照一定的模式,从数组或对象中提取值,为变量进行赋值,这个过程叫做解构

只要= 左右两边值得个数相等,左边的元素会按照索引,一一找到对应的值,本质上叫做模式匹配


左边的元素只能匹配到一部分右边的值时,这种情况被称为不完全解构

左边的元素找不到右边的值时,变量的默认值为undefined,这种情况被称为结构不成功

如果=右边的值为不可遍历对象时,会抛出异常

只要某种数据结构具有Iterator接口,都尅采用数组形式的解构赋值

解构赋值允许指定默认值

只有当一个数组成员严格等于(===)undefined时,才会取默认值

如果默认值为一个表达式,那么这个表达式是惰性求值,只有在用到的时候才会求值

对象解构赋值

eq: let {aa,bb,cc} = {aa:1,bb:2,cc:c};

对象的属性没有顺序,所以变量名必须保持一致才能赋值

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本文通过学习阮一峰的博客,外加自己的理解,整理了一下我对js变量的解构赋值的理解。 数组的解构赋值 对象的解构赋值...
    宋乐怡阅读 527评论 0 2
  • 1.数组的解构赋值 2.对象的解构赋值 3.字符串的解构赋值 4.数值和布尔值的解构赋值 5.函数参数的解构赋值 ...
    卞卞村长L阅读 926评论 0 0
  • 数组的解构赋值 基本用法 ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destru...
    呼呼哥阅读 438评论 0 3
  • 数组的解构赋值 基本用法 ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destru...
    陈老板_阅读 374评论 0 0
  • 01、数组的解构赋值ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destruct...
    夜幕小草阅读 342评论 0 1