zoukankan      html  css  js  c++  java
  • (3)ES6解构赋值-对象篇

    对象的解构赋值(可以不按顺序,但是key必须一样否则为undefined)

    //demo1
    var {name,age} = { name: "Jewave", age:26 };
    console.log(name);  //'jewave'
    console.log(age);  //26
    
    //demo2
    var {id,name,age} = { name: "Jewave", age:26,id:007 };
    console.log(name);  //'jewave'
    console.log(age);  //26
    console.log(id)   //7
    
    //demo3
    var { id: personId, name: personName, age: personAge } = { name: "Jewave", age:26,id:007 };
    console.log(personId); //7
    console.log(personName); //'jewave'
    console.log(personAge); //26
    
    //demo4
    let object = { first: 'Hello', last: 'World' };
    let { first: firstName, last: lastName } = object;
    console.log(firstName); //Hello
    console.log(lastName); //World

    对象解构默认值的条件(对象属性值严格等于undefined,也就是未定义)

    //demo1
    var { x = 3 } = {};
    console.log(x); //3
    
    //demo2
    var { x, y = 5 } = { x: 1 };
    console.log(x); //1
    console.log(y); //5
    
    //demo3
    var { message: msg = "You Are A Person!" } = {};
    consle.log(msg); //"You Are A Person!"
    
    //demo4
    var { x = 3 } = { x: undefined };
    console.log(x); //3
    
    //demo5
    var { y = 3 } = { y: null };
    console.log(y);//null

    已声明变量的解构赋值

    var x;
    {x} = { x: 1 }; // Uncaught SyntaxError: Unexpected token =
    为啥报错,因为{x}被理解成代码块而不是对象所以不能进行解构,
    这时候我们用一个括号将整体括起来就可以。
    
    var x;
    ({x} = { x: 1 });
    console.log(x); //1

    现有对象的方法

    console.log( Math.sin(Math.PI/6) ); //0.49999999999999994
    
    //简化版的写法可读性更棒
    let { sin, cos, tan, cot, PI } = Math;
    console.log( PI ); //3.141592653589793
    console.log( sin(PI/6) ); //0.49999999999999994  
  • 相关阅读:
    android自动登录
    【199】ArcGIS 添加自定义工具到工具箱
    【198】Synergy
    【197】PowerShell 通过 FTP 下载文件
    【196】Dell 移动工作站系统安装方法
    php如何同时连接多个数据库
    FreeRTOS学习笔记——任务间使用队列同步数据
    牛腩新闻发布系统之发布
    Linux散列表(二)——宏
    Excel导入数据库(三)——SqlBulkCopy
  • 原文地址:https://www.cnblogs.com/jewave/p/6238604.html
Copyright © 2011-2022 走看看