• 我的前端规范——JavaScript篇


    相关文章

      简书原文:https://www.jianshu.com/p/5918c283cdc3

      我的前端规范——开篇:http://www.cnblogs.com/shcrk/p/9271561.html

      我的前端规范——HTML篇:http://www.cnblogs.com/shcrk/p/9271613.html

      我的前端规范——CSS篇:http://www.cnblogs.com/shcrk/p/9271608.html

      我的前端规范——JavaScript篇:http://www.cnblogs.com/shcrk/p/9271620.html

      

    大纲

      前言
      1、命名规范
      2、编码规则

    前言

      规范对于一个项目来说是很重要的,统一的规范对代码的一致性、项目的质量、工作的协调都有很大的帮助,而且有时候可以规避很多意料不到的错误。
      当然,规范是死的,人是活的。我总结的前端规范是我认为对我来说比较适合的,我又认可的,所以我能比较好的接受和使用。但是,不同的团队,不同的项目需要遵守的规范也许就是不一样的。规范的作用是让项目的代码看起来更有统一性,让团队的协作更方便,因此,根据具体的情况制定统一的规范才是最合理的,而这里我给出的也只是我认为比较符合我风格和习惯的,至于具体的规范还是要依据具体的情况来总结制定。
      单独写成一篇的话篇幅很大,因此我会将我的总结写成:开篇、css、html、js四篇,让有需要的读者能够更方便的查找到想要的知识。

    1、命名规范

      1.1、文件命名可读性强
        文件夹、文件的命名与命名空间应能代表代码功能,可读性强。

      1.2、函数命名
        驼峰命名方式,函数名字应体现出该函数的作用

    function funName() {}
    

      

      1.3、常量
        大写

    var VARIABLENAME
    

      

      1.4、变量
        驼峰命名
        变量名应体现出该变量的内容
        通过加下划线体现其局部变量的含义,如 let _name;

    var variableName
    

     

    2、编码规则

      2.1、排版缩进
        采用统一的缩进方式排版代码。缩进必须是软tab(用空格字符)。(这里的tab的要求是4个空格)

      2.2、关键词、条件括弧后面使用空格;运算操作符号两侧使用空格;语句分割符‘,’后面使用空格

    var name[空格]=[空格]value;
    if[空格](a,[空格]b) {
    }
    

      

      2.3、左大括号"{"可以居行尾,也可写在下行首(独自一行);右大括号"}"单独占一行,居行首

    if (a && b) {
     }
    ------------------------
    if (a && b) 
    {
    }
    

      

      2.4、句末必须用分号结尾

    var fn = function () {
    };//这里没有分号的话,脚本解析器会报错!!!
    (function () {
       alert(1);
    })();
    

      

      2.5、单行过长应在适当位置予以换行,增强可读性
        if 语句括号中的条件若过多过长,应予以折行;折行后,||、&& 等符号应与 “(” 后的第一个字母纵向对齐

    if (condition1 
        && condition2 
        || condition3) {
    }
    

      

      2.6、if、while、for、do语句的执行体总是用"{"和"}"括起来,即使在其结构体内只有一条语句

    if (s==100) {
     alert('shit!');
    }
    

      

      2.7、语法意义相互独立的代码将用空行分隔

    a++; b++;   //!!!避免同一行书写两个表达式
    if (a > b) {
     value = a;  //行间不用空行间隔
    }
    
    var variableName = value;   //与上一代码行使用空行间隔
    

      

  • 相关阅读:
    C# WinForm API 改进单实例运行
    CF1310D Tourism [随机化]
    CF1311E Construct the Binary Tree
    [IOI2018] werewolf 狼人 [kruskal重构树+主席树]
    #6029. 「雅礼集训 2017 Day1」市场 [线段树]
    P5840 [COCI2015]Divljak [AC自动机,链并]
    CF547E Mike and Friends [AC自动机,离线树状数组]
    P5112 FZOUTSY
    CF 150E Freezing with Style [长链剖分,线段树]
    CF1230E Kamil and Making a Stream
  • 原文地址:https://www.cnblogs.com/shcrk/p/9271620.html
Copyright © 2020-2023  润新知