码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • ES6 解构赋值--一般用法


     

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

    1. <script>
    2. let a = 1;
    3. let b = 2;
    4. let c = 3;
    5. script>

    等价于: 可以从数组中提取值,按照对应位置,对变量赋值。==只要左右两边相等,就会赋值,如果解构不成功,变量的值就等于undefined

    1. <script>
    2. //等价于
    3. let [a,b,c]=[1,2,3]
    4. script>
    1. <script>
    2. let [ , , third] = ["foo", "bar", "baz"];
    3. console.log(third)
    4. script>

    0、 只要等号两边的模式相同,左边的变量就会被赋予对应的值。

    1. <script>
    2. let [head, ...tail] = [1, 2, 3, 4];
    3. console.log(head)// 1
    4. console.log(tail)// [2, 3, 4]
    5. script>

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

    1. <script>
    2. let [x, y, ...z] = ['a'];
    3. console.log (x) // "a"
    4. console.log(y) // undefined
    5. console.log(z) // []
    6. script>

    2、不完全解构,即等号左边的模式,只匹配一部分的等号右边的数组。这种情况下,解构依然可以成功。——两个情况

    1. <script>
    2. let [x, y] = [1, 2, 3];
    3. console.log (x) //1
    4. console.log(y) //2
    5. script>
    1. <script>
    2. let [x, [y], z] = [1, [2, 3], 4];
    3. console.log (x) //1
    4. console.log(y) //2
    5. console.log(z)//4
    6. script>

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

    1. <script>
    2. // 报错--全部-每一句
    3. let [foo] = 1;
    4. // let [foo] = false;
    5. // let [foo] = NaN;
    6. // let [foo] = undefined;
    7. // let [foo] = null;
    8. // let [foo] = {};
    9. script>

    等号右边的值(false,NaN,undefined,null)赋值转化为对象不具备Iterator 接口,对象本身不具备Iterator 接口

  • 相关阅读:
    系统架构师2022年案例分析考前
    基于html+css的图展示118
    有流量,但没有销售?增加网站销量的 6 个步骤
    劲爆,Java 协程终于来了
    基于STC8H4K64TL单片机的触摸功能调试
    MYSQL-索引
    路由进阶:route-policy实验配置
    nodejs+vue中国非物质文化遗产网站设计与实现elementui
    95. 不同的二叉搜索树 II
    P1016 [NOIP1999 提高组] 旅行家的预算——题解
  • 原文地址:https://blog.csdn.net/weixin_47295886/article/details/127047683
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号