美文网首页
airbnb入门(一)

airbnb入门(一)

作者: 我_巨可爱 | 来源:发表于2017-10-30 16:28 被阅读0次

    Type

    1. 初始化变量,需要明确值

    References

    const

    1. 当变量没有改变引用(reassign)时,优先使用const
    // const 和 let 的小案例
    for (const key in obj) {} //注意这里每次循环,是重新声明(redefined)不是重新分配(reassign),所以使用const
    for (let i = 10;i<12;i++) //i只在最开始的声明一次,之后每次都是重新分配值,所用使用let
    
    1. 报错条件,当有变量没有改变引用类型,但是没有用const声明,会报错prefer-const
    2. 可修改配置文件,该类型错误较易触发。

    let

    1. 声明块级变量,优先使用let变量。使用var,会报错,no-var

    const和let

    1. 两者都是块级作用域,当在块级之外使用,会报错ReferenceError

    Object

    1. Object对象的创建使用字面量,而不推荐使用Object构造函数创建。会报错,no-new-object
    2. 暂定。使用可控制的构建属性名称的方法,构建属性名称。
    3. 方法需要简写。会报错,object-shorthand
    4. 属性名和属性变量名相同,简写。会报错,object-shorthand
    5. 先简写属性,再普通属性,再方法。
    6. 只在必要的情况下,为属性名添加引号。"data-ha"。否则,报错,quote-props
    7. 以下方法,使用const声明的静态变量充当中转站
    • hasOwnProperty
    • propertyIsEnumerable
    • isPrototypeOf

    扩展对象

    1. 在扩展对象的时候,不推荐使用ES6中新增方法,Object.assign()
    2. Object.assign()用法,第一个参数是target,第2到第N个参数为source。
    3. Object.assign()作用,将后边对象的属性值复制给第一个对象,产生一个新的对象。如果属性是引用类型,那么两者公用一个属性。
    4. 对象深度复制的办法,使用JSON.stringfy()JSON.parse()
    5. 在扩展对象的时候,推荐使用ES6中扩展运算符...,其所用与apply相似。将数组转变成参数序列。ES2017 将这个运算符引入了对象

    Arrays

    1. 创建数组建议使用,字面量。会报错,no-array-constructor
    2. 添加数组元素,使用push方法,少使用arr.length方法添加
    3. 复制数组(不是简单的赋值,赋值的结果是两个变量存储同一个),使用扩展运算符,那么复制产生的元素和原数组不相互干扰。
    4. 类数组转化成数组,Array.from(like-array)
    5. 在数组的回调函数中,大部分情况下需要返回一个值,判断语句也需要一定的改写。会报错,array-callback-return
    // 错误
    var flag = arr.filter(function(x){
      if (x) {
        return x;
      }else {
        return false;
      }
    });
    // 改写
    var flag = arr.filter(function(x){
      if (x) {
        return x;
      }
      return false;
    });
    

    ESLint

    ESLint是一个QA(Quality Assurance)工具,主要作用避免低级错误和统一代码风格

    1. 使用方式
    • 全局安装,使用命令检查某个项目下的文件
    • 局部安装,配合编辑器的插件使用

    相关文章

      网友评论

          本文标题:airbnb入门(一)

          本文链接:https://www.haomeiwen.com/subject/vlfmpxtx.html