JS规范

作者: 郁南 | 来源:发表于2019-05-09 09:39 被阅读0次

    1.使用两个空格替代tab缩进

    // bad 
    function foo() {
    ∙∙∙∙let name;
    }
    // bad 
    function bar() {
    ∙let name;
    }
    // good 
    function baz() {
    ∙∙let name;
    }
    

    2.不能省略分号

    // bad 
    let luke = {}
    let leia = {}
    [luke, leia].forEach(jedi=>jedi.father='vader')
    
    // good 
    let luke = {};
    let leia = {};
    [luke, leia].forEach((jedi) => {
      jedi.father='vader';
    });
    

    3.杜绝var

    // bad
    var example =42;
    // good
    const example=42;
    

    4.优先使用箭头函数

    // bad
    [1, 2, 3].map(function (x) {
      const y= x +1;
      return x * y;
    });
    
    // good
    [1, 2, 3].map((x) => {
      const y= x +1;
      return x * y;
    });
    

    5.使用模板字符串``取代连接字符串''

    // bad
    function sayHi(name) {
      return'How are you, '+ name +'?';
    }
    // bad
    function sayHi(name) {
      return ['How are you, ', name, '?'].join();
    }
    // bad
    function sayHi(name) {
      return`How are you, ${ name }?`;
    }
    // good
    function sayHi(name) {
      return`How are you, ${name}?`;
    }
    

    6.优先使用for...of

    const map = new Map();
    map.set('first', 'hello');
    map.set('second', 'world');
    
    for (let [key, value] of map) {
      console.log(key + " is " + value);
    }
    // first is hello
    // second is world
    
    // 获取键名
    for (let [key] of map) {
      // ...
    }
    
    // 获取键值
    for (let [,value] of map) {
      // ...
    }
    

    7.常量的命名规范

    常量命名应该用全大写格式,并用下划线分割

    如果你确定一定以及肯定一个变量值以后不会被修改,你可以将它的名称使用全大写模式改写,暗示这是一个常量,请不要修改它的值。

    遵守这条规则时需要注意的一点是,如果这个常量是一个函数,那么应该使用驼峰式命名法,并且首字母也应该大写。

    // bad
    const number=5;
    
    // good
    const NUMBER=5;
    
    const FunctionName = ()=>{};
    

    8.每次只声明一个变量

    // bad
    let a =1, b =2, c =3;
    
    // good
    let a =1;
    let b =2;
    let c =3;
    

    9.使用单引号

    只允许使用单引号包裹普通字符串,禁止使用双引号。如果字符串中包含单引号字符,应该使用模板字符串。

    // bad
    let directive ="No identification of self or mission."
    
    // bad
    let saying ='Say it ain\u0027t so.';
    
    // good
    let directive ='No identification of self or mission.';
    
    // good
    let saying =`Say it ain't so`;
    

    相关文章

      网友评论

          本文标题:JS规范

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