博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ES6之解构赋值
阅读量:6965 次
发布时间:2019-06-27

本文共 1113 字,大约阅读时间需要 3 分钟。

  • ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。

一,数组解构

  • 事实上,只要某种数据结构具有 Iterator 接口,都可以采用数组形式的解构赋值。
  1. 数组解构
let [a,b,b] = [1,2,3];// a = 1; b = 2; c = 3复制代码
  1. 默认值解构
let [a, b = true] = ['珺','test' ];// a = '珺';b = 'test'复制代码

二,对象的解构赋值

  1. 对象解构
let obj = {    a: 18,    b: 'test'}let {a, b} = obj;// a=18, b='test'复制代码
  1. 注意点
let x;{x} = {
x: 18} // 报错({x} = {
x: 18}) // 这种ok=========let arr = [2,3,4];let {
0: aa, length: ll} = arr;// aa = 2// ll = 3复制代码
  1. 函数参数的解构赋值
// 基本用法function fn(a = 1, b = 2){    console.log(a,b);}fn() // 1,2fn(3) // 3,2fn(3,4) // 3,4======= // 注意:参数是一个对象,通过对这个对象进行解构,得到变量a和b的值 // 下面是为变量a和b指定默认值function ff({a = 1,b = 2} = {}){    console.log(a,b)}ff() // 1,2ff({}) // 1,2ff({
a: 3, b: 4}) // 3,4ff({
a: 18}) //18, 2ff({
b: 16}) // 1,16// 下面是为参数指定默认值function ff({a,b} = {a: 1, b: 2}){ console.log(a,b)}ff() // 1,2 {a,b} = {a: 1, b: 2}ff({}) // undefined undefined {a,b} = {}ff({
a: 3, b: 4}) // 3,4 {a,b} = {a: 3, b: 4}ff({
a: 18}) //18 undefined {a,b} = {a: 18}ff({
b: 16}) // undefined 16 {a,b} = { b: 16}复制代码

转载于:https://juejin.im/post/5ccd454a6fb9a0323a01c50b

你可能感兴趣的文章
Android自动化测试中AccessibilityService获取控件信息(2)-三种方式对比
查看>>
设计模式汇总
查看>>
LR错误整理
查看>>
[Java web]Spring+Struts2+Hibernate整合过程
查看>>
在Linux安装MySQL
查看>>
POJ 2251-Dungeon Master (三维空间求最短路径)
查看>>
PBRT笔记(14)——光线传播2:体积渲染
查看>>
Git使用教程
查看>>
游戏蛮牛Unity 用户文档
查看>>
安装 asp.net core 出错
查看>>
【EMC】EMI滤波器
查看>>
wireshark抓包图解 TCP三次握手/四次挥手详解[转]
查看>>
第一章 数组与指针概念剖析
查看>>
知乎模拟登录 requests session
查看>>
php如何读出xml的节点内容 两个例子
查看>>
code第一部分数组:第十九题 矩阵元素为0,横列置零
查看>>
oracle小数点前零丢失解决方案
查看>>
CentOS 5.5 介绍
查看>>
Eclipse 变量高亮显示设置
查看>>
解决JSP页面无法使用EasyUI里面class="easyui-dialog"的问题
查看>>