zoukankan      html  css  js  c++  java
  • 18-ES6(1)

    第18课-ES6(1)

    模块化

    1.export和import

    // model.js
    export default let m = 1;
    
    // 出错
    export default n = 2;
    
    let func1 = value => console.log(`func1 ${value}`)
    let func2 = value => console.log(`func2 ${value}`)
    export {func1, func2}
    
    // test.js
    import {func1, func2} from "model.js"
    import m from "model.js"
    
    func1(m)
    func2(m)
    

    扩展运算符spread(...)

    let arr = [1, 2, [4, 5, 6], 3]
    
    console.log(arr[0], arr[1], arr[2], arr[4])
    // 相当于
    console.log(...arr)
    
    let arr2 = [7, 8, 9]
    // 两个数组合并
    console.log([...arr,...arr2]);
    // [1, 2, [4, 5, 6], 3, 7, 8, 9]
    

    "..."只拆分数组中的一层

    Object.assign方法

    改方法用于合并几个对象, 并将结果赋值给第一个参数传入的对象

    let o = {}
    let obj = Object.assign(o, {a: 'a'}, {b: 1})
    console.log(obj) // {a: 'a', b: 1}
    console.log(o) // {a: 'a', b: 1}
    

    Object.is方法

    ES6提出“Same-value equality”(同值相等)算法,用来解决这个问题。Object.is就是部署这个算法的新方法。它用来比较两个值是否严格相等,与严格比较运算符(===)的行为基本一致。

    Object.is和===相比, 除了对NaN以及+0和-0的比较外, 其他一致

    console.log(Object.is(NaN, NaN)) // true
    console.log(Object is(+0, -0)) // false
    
    console.log(NaN === NaN) // false
    console.log(+0 === -0) // true
    
  • 相关阅读:
    作业一
    工作日志(二)
    工作日志(三)
    工作日志(四)
    工作日志(一)
    团队项目开发日志(四)
    团队项目开发日志(三)
    团队项目开发日志(二)
    团队项目开发日志(一)
    第四次作业
  • 原文地址:https://www.cnblogs.com/fengxuefei/p/6250583.html
Copyright © 2011-2022 走看看