位置: 编程技术 - 正文

ES6学习之变量的解构赋值(变量js)

编辑:rootadmin

推荐整理分享ES6学习之变量的解构赋值(变量js),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:es6 变量,es6定义变量,es6定义变量,es6变量交换,变量js,变量js,es6定义变量,es6 变量类型,内容如对您有帮助,希望把文章链接给更多的朋友!

变量的解构赋值

ES6中允许按照一定模式,从数组和对象中提取,对变量进行赋值。

数组的解构赋值

上面的代码标示可以从数组中提取值,按照位置的对应关系对变量进行赋值。

本质上,这种写法属于“模式匹配”,只要等号两边的模式相同,左边的变量就会被赋予对应的值。

如果解构不成功,变量的值就等于undefined。

不完全解构

如果等号左边的模式只匹配等号右边数组的一部分,解构依然可以成功,这种情况叫做不完全解构。

如果等号右边不是数组,那么将会报错。(不具备可遍历的结构)。

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

fibs是一个Generator函数,原生具有Iterator接口,解构赋值会依次从这个接口获取值。

默认值

解构赋值允许指定默认值。

ES6学习之变量的解构赋值(变量js)

ES6内部使用严格相等于运算符(===)判断一个位置是否有值。所以,一个数组成员如果不严格等于undefined,默认值便不会生效。

表达式也可以作为默认值,如果表达式作为默认值的时候,该表达式是惰性求值的,只有在用到的时候才会求值。

在上面的代码中,函数f不会执行,是因为x能取到值。

默认值可以引用解构赋值的其他变量,但该变量必须已经声明。

对象的解构赋值

解构赋值可以应用在数组上,同样也可以用于对象。

对象的解构赋值与数组有一个不同点,就是数组的元素是按次序排序的,变量的取值由它的位置决定,而对象的属性没有次序,变量必须与属性同名,才能取到正确的值。

如果变量名与属性名不一致,那必须写成这样:

实际上对象的解构赋值是以下的形式简写:

对象的解构赋值的内部机制,是先找到同名属性,然后再赋给对应的变量,真正被赋值的是后者,而不是前者。

但是,采取上面的写法时,变量的声明和赋值是一起的,对于let和const而言,变量不能重新声明,所以一旦赋值的变量以前声明过,就会报错。

对象的解构也可以用于嵌套结构的对象。

这时p是模式,不是变量,因此不会被赋值。

对象的解构赋值也可以指定默认值,默认值的生效条件是,对象的属性值严格等于undefined。

如果解构模式是嵌套对象,而且子对象所在的父属性不存在,那么将会报错。

总结

标签: 变量js

本文链接地址:https://www.jiuchutong.com/biancheng/376051.html 转载请保留说明!

上一篇:超全面的javascript中变量命名规则(超全面的竣工验收流程及资料)

下一篇:关于不同页面之间实现参数传递的几种方式讨论(不同页面之间传递数据)

  • 外籍人士如何在中国办理延长签证
  • 食堂用固定资产可以抵扣吗
  • 进项税多久有效
  • 专票要写开户行和账号
  • 个人商业保险抵交个人所得税
  • 查验发票会显示名字吗
  • 去年的亏损今年第一季度可以弥补吗
  • 季度的工会经费计税依据
  • 应收暂估账务处理
  • 企业所得税税率有几个档次
  • 计提固定资产折旧时可以先不考虑固定资产残值的方法是
  • 新征用的耕地是什么意思
  • 有限合伙企业分红个人所得税
  • 原来已入帐的款现在收回帐务处理?
  • 进项发票当月不抵扣怎么入账
  • 计提工资需要工资表吗
  • 出口业务增值税免抵税额
  • 营改增公告
  • 增加以前年度收入是否需要更正申报年报
  • 新企业的设立流程
  • 水资源税计入会计科目
  • 分红转增股本什么意思
  • 国外企业提供国际运输服务税率
  • 内部职工销售佣金计入
  • 个人出租车辆给公司个人所得税
  • w11系统防火墙
  • 屏幕乱跳广告解决办法
  • gif图片查看软件
  • 如何修复win7系统引导
  • window10最新20h2
  • 怎么实现增删改查
  • 各种主板bios中文设置图解
  • 关闭自动重新启动会怎样
  • 经营租赁固定资产体现实质重于形式
  • 增值税专用发票几个点
  • 记账凭证和原始凭证都是登记账簿的直接依据
  • 应收账款如何做会计分录
  • 长期股权投资会减值吗
  • php web socket
  • 金蝶销售明细查不出来
  • 业务招待费包括哪些内容和费用
  • 招待费发票怎么做分录
  • 机票行程单可以在到达地打印吗
  • 固定资产清理产生的费用入什么科目
  • mysql性能监控工具和调优
  • 海关缴款书上完税价格含增值税吗
  • 建筑安装服务的进项税有哪些
  • 少数股东损益会出现负数吗
  • 资产负债表多久编制一次
  • 固定资产正常报废与非正常报废的会计处理基本相同
  • 进项税留底怎么处理
  • 汇算清缴步骤及处理方法
  • 固定资产机械设备有哪些
  • 商业承兑汇票怎么做账
  • 企业运营工资
  • 教育费返还款计入收入吗
  • 计提了减值准备怎么算折旧额
  • 登记生产成本和制造费用的明细账
  • 如何屏蔽网络?
  • freebsd重启命令
  • win10rs2是哪个版本
  • linux cp用法
  • 双系统计算机怎么开机
  • ubuntu搭建go环境
  • win8怎么调整显示器亮度
  • win1020h2更新卡在1
  • BootStrap glyphicons 字体图标实现方法
  • jquery表单验证代码
  • jquery mouse
  • 批处理书
  • shell包含文件
  • html中<
  • python re 查找
  • unity 案例
  • python 开源ide
  • jquery设计模式
  • android屏幕适配的五种方式
  • python multinomial
  • 证券经纪人收入构成
  • 高新企业公布
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设