美文网首页
javascript 编码规范

javascript 编码规范

作者: wjing | 来源:发表于2016-02-23 16:28 被阅读119次

    前端编码风格规范(3)—— JavaScript 规范

    其他三个写的也挺好的,不过html和css我已经参照了其他的。

    防污染与IIFE

    (function($, w, d){
      'use strict';
    
      $(function() {
        w.alert(d.querySelectorAll('div').length);
      });
    }(jQuery, window, document));
    

    总是使用var来声明变量
    所有的变量以及方法,应当定义在 function 内的首行。只用一个 var 关键字声明,多个变量用逗号隔开。
    把赋值尽量写在变量申明中。
    总是使用 === 精确的比较操作符

    真假判断
    false:false, 0, undefined, null, NaN, ''
    true: true, 1, {}, [], '0'

    逻辑操作符 || 和 && 也可被用来返回布尔值

    (function(log){
     'use strict';
    
     function multiply(a, b) {
         //给变量赋值
         a = a || 1;
         b = b || 1;
    
         log('Result ' + a * b);
     }
    
         multiply(); // Result 1
         multiply(10); // Result 10
         multiply(3, NaN); // Result 3
         multiply(9, 5); // Result 45
    
    }(window.console.log));
    

    总是使用分号
    分号需要用在表达式的结尾,而并非函数声明的结尾

    var foo = function() {
         return true;
    }; // semicolon here.
    
    function foo() {
         return true;
    } // no semicolon here.
    

    不能在语句块内的函数声明

    // 不推荐
    if (x) {
     function foo() {}
    }
    
    // 推荐
    if (x) {
     var foo = function() {};
    }
    

    如何自定义异常?
    抛出对象

    if(name === undefined) {
     throw {
         name: 'System Error',
         message: 'A name should always be specified!'
     }
    }
    

    闭包有什么用?关于闭包如何工作的合理解释
    不在循环中创建函数或闭包
    只在构造函数和对象的方法中 使用this
    不要使用switch
    用数组和对象字面量
    禁止修改内建对象的原型链
    圆括号,不要用在一元操作符上,例如 delete, typeof 和 void,或在关键字之后,例如 return, throw, case, new 等。
    字符串统一使用单引号(‘)

    js语言精粹

    缩进2个空格
    if和 ( 之间放一个空格
    函数调用时,才使 ( 和前面的符号相连
    除了 . 和 [ 的所有中置运算符两边都放空格
    每个逗号和冒号后都使用一个空格
    每行最多放一个语句
    如果一行放不下,会在一个冒号或二元运算符后拆开它
    以行注释为主;块注释用于正式的文档记录和注释。

    相关文章

      网友评论

          本文标题:javascript 编码规范

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