zoukankan      html  css  js  c++  java
  • 1.3 解构赋值、变量赋值

    解构赋值:

    // 1.ES6的解构赋值
    // 包括数组和对象的整体赋值,基本原则如下:
    //      数组的元素是按次序排列的,变量的取值由它的位置决定;
    //      对象的属性没有次序,变量必须与属性同名,才能取到正确的值。
    // 数组的解构赋值:
    let [x, y] = [1, 2] // x = 1 ,y = 2
    let [y, x] = [1, 2]  // 交换变量的值 x = 2, y = 1
    
    // 对象的解构赋值:
    let user = {
        name: '鞠婧祎',
        age: 23,
    }
    
    let {name, age} = user
    console.log(name) // 鞠婧祎
    console.log(age) // 23
    
    // 但是对象的解构赋值,允许给赋值的变量重命名
    
    
    // 2.给方法设置默认值
    function f1(a = 1) {
        console.log(a)
    }
    // 如果不传递参数或者传递的参数为undefined,则显示默认参数,否则为传递的参数
    f1(undefined) // 1
    f1(null) // null
    
    // 3. 空值的问题
    let a = []
    let b = {}
    if (a.length) { //空数组是可以进去的,但是长度为0不可以进去
        console.log(1)
    }
    if (!b.name && !a.length) {
        console.log(2)
    }

    参考文档:

    ES6 对象的解构赋值

  • 相关阅读:
    KMP算法的理解和代码实现
    关于线程死锁
    PAT1018
    PAT1059
    PAT1009
    PAT1006
    PAT1005
    PAT1004
    PAT1002
    PAT
  • 原文地址:https://www.cnblogs.com/shiyun32/p/11294648.html
Copyright © 2011-2022 走看看