1.缩进层级

建议使用4个空格为一个缩进层级,避免使用制表符进行缩进,可以通过配置文本编辑器来改变 缩进层级表示的内容.

2.语句末尾

有赖于分析器的自动分号插入机制(ASI),JavaScript可以省略分号,但推荐总是使用分号.

3.行的长度

一行的长度最好限定在80个字符

4.换行

如果一行多于80个字符,应当在一个运算符(逗号、加号)后换行,并且下一行增加两个层级

5.空行

建议下面的场景中插入空行:

  • 在方法之间

  • 在方法的局部变量和第一条语句之间

  • 在多行注释或单行注释之前

  • 在方法内的逻辑片段之间插入空行,提高可读性

6.命名

驼峰法命名,例:thisIsMyname

7.变量和函数

变量:以名词为前缀驼峰命名

函数:以动词为前缀驼峰命名,并且有以下常见约定:

动词 含义
can 函数返回一个布尔值
has 函数返回一个布尔值
is 函数返回一个布尔值
get 函数返回一个非布尔值
set 函数用来保存一个值

8.常量

使用大写字母和下划线来命名,例:MAX_COUNT

9.构造函数

大驼峰命名,常常是名词

10.字符串

字符串应该始终使用双引号(避免使用单引号)且保持一行,避免在字符串中使用斜线另起一行,如果另起一行请使用“+”,并且保持缩进.

11.数字

数字应当使用十进制整数,科学计数法表示整数,十六进制整数,或者十进制浮点数,小数点前后至少保留一位数字。避免使用八进制直接量

12.null

特殊值null除了下述情况应当避免使用

  • 用来初始化一个变量,这个变量可能被复制为一个对象

  • 用来和一个已经初始化的变量比较,这个变量可以是也可以不是一个对象

  • 当函数的参数期望是对象时,被用作参数传入

  • 当函数的返回值期望是对象时,被用作返回值传出

13.undefined

避免使用特殊值undefined,判断一个变量是否定义应当使用typeof操作符

14.对象直接量

对象直接量应当使用如下格式

  • 起始花括号应当同表达式保持同一行

  • 每个属性的名值对应当保持一个缩进,第一个属性应当在左花括号后另起一行

  • 每个属性的名值对应当使用不含印好的属性名,其后紧跟一个冒号,而后是值

  • 唐拓属性值是函数类型,函数体应当在属性名之下另起一行,而且其前后均应 保留一个空行

  • 一组相关的属性前后可以插入空行以提升代码的可读性

  • 结束的有花括号应当独占一行

  • 当对象字面量作为函数参数时,如果值是变量,其实花括号应当同函数名在同一行,所有其余先前列出的规则同样适用

15.数组直接量

可以使用两个方括号将数组初始元素括起来,来替代使用Array构造函数的方是来创造数组。

编写可维护的JavaScript----笔记(一)的更多相关文章

  1. 《编写可维护的javascript》读书笔记(中)——编程实践

    上篇读书笔记系列之:<编写可维护的javascript>读书笔记(上) 上篇说的是编程风格,记录的都是最重要的点,不讲废话,写的比较简洁,而本篇将加入一些实例,因为那样比较容易说明问题. ...

  2. 《编写可维护的javascript》读书笔记(上)

    最近在读<编写可维护的javascript>这本书,为了加深记忆,简单做个笔记,同时也让没有读过的同学有一个大概的了解. 一.编程风格 程序是写给人读的,所以一个团队的编程风格要保持一致. ...

  3. 【读书笔记】读《编写可维护的JavaScript》 - 编程实践(第二部分)

    本书的第二个部分总结了有关编程实践相关的内容,每一个章节都非常不错,捡取了其中5个章节的内容.对大家组织高维护性的代码具有辅导作用. 5个章节如下—— 一.UI层的松耦合 二.避免使用全局变量 三.事 ...

  4. 《编写可维护的JavaScript》 笔记

    <编写可维护的JavaScript> 笔记 我的github iSAM2016 概述 本书的一开始介绍了大量的编码规范,并且给出了最佳和错误的范例,大部分在网上的编码规范看过,就不在赘述 ...

  5. 编写可维护的Javascript读书笔记

    写在前面:之前硬着头皮参加了java方面的编程规范培训,收货良多,工作半年有余的时候,总算感觉到一丝丝Coding之美,以及造轮子的乐趣,以至于后面开发新功能的时候,在Coding style方面花了 ...

  6. 编写可维护的JavaScript代码(部分)

    平时使用的时VS来进行代码的书写,VS会自动的将代码格式化,所有写了这么久的JS代码,也没有注意到这些点.看了<编写可维护的javascript代码>之后,做了些笔记. var resul ...

  7. 《编写可维护的JavaScript》之编程实践

    最近读完<编写可维护的JavaScript>,让我受益匪浅,它指明了编码过程中,需要注意的方方面面,在团队协作中特别有用,可维护性是一个非常大的话题,这本书是一个不错的起点. 本书虽短,却 ...

  8. 编写可维护的JavaScript 收纳架

    如果你看过Nicolas C.Zakas写过的任何作品,你必须承认他是个不折不扣的天才.也只有天才级的才能写出<JavaScript高级程序设计>让所有的前端攻城师人手一本.Nicolas ...

  9. 编写可维护的JavaScript之编程风格

    在团队中只有每个人的编程风格一致,大家才能方便的互相看懂和维护对方的代码. 1. 层级缩进 对于层级缩进目前有两种主张:1)使用制表符这种方法有两种好处,第一,制表符和缩进层级之间是一一对应关系,符合 ...

  10. 推荐一本好书:编写可维护的JavaScript(可下载)

    目录 推荐一本好书:编写可维护的JavaScript(可下载) 书摘: 下载: 有些建议: 推荐一本好书:编写可维护的JavaScript(可下载) 书摘: 很多设计模式就是为了解决紧耦合的问题.如果 ...

随机推荐

  1. 新闻焦点切换flash应用

    pixviewer.zip <!-- pixviewer.swf使用--> <script language="javascript" type="te ...

  2. 矩阵LU分解分块算法实现

    本文主要描述实现LU分解算法过程中遇到的问题及解决方案,并给出了全部源代码. 1. 什么是LU分解? 矩阵的LU分解源于线性方程组的高斯消元过程.对于一个含有N个变量的N个线性方程组,总可以用高斯消去 ...

  3. Lina Group

    var query = from ll in proListRequestList group ll by new {ll.pro_id} into g select new ProListReque ...

  4. angular中使用promise

    promise是一种用异步的方式处理值的方法,promise是对象,代表了一个函数最终可能的返回值或者抛出的异常,在与远程对象打交道时我们可以把他看作是远程对象的一个代理. 如果说是promise也是 ...

  5. Oracle怎么导出存储过程

    Oracle怎么导出存储过程 http://www.myexception.cn/database/1564245.html 导出: 1, 2,点击输出文件,选择要导出文件,选择要导出的目录以及设置导 ...

  6. java数据库编程:JDBC操作及数据库

    掌握JDBC操作步骤, 掌握数据库驱动程序配置 可以使用JDBC进行数据库连接. JDBC本身是一个标准,因此操作步骤是固定的,以后只需要修改很少代码就可以达到不同数据库间连接转换功能. 操作步骤: ...

  7. jConsole,jvisualvm和jmap使用

    JConsole     JConsole 是一个内置 Java 性能分析器,可以从命令行或在 GUI shell 中运行.可以轻松地使用 JConsole来监控 Java 应用程序性能和跟踪 Jav ...

  8. WebSphere监控软件 TPV(Tivoli Performance Viewer)的缺点

    TPV的缺点     大家都知道 IBM 的 WebSphere Application Server(WAS)在v5之后自带有TPV(Tivoli Performance Viewer) 用来监控W ...

  9. 在windows 2008 R2上安装sharepoint 2013时遇到提示必须安装 .netframeword4.5的处理办法

    近日,有个客户需要个测试环境,需要搭建一个sps2013的测试服务器 但基于服务器软件授权的考虑,让使用windows2008 作为系统服务器 但一安装就碰到个提示,要求先安装framework4.5 ...

  10. ASP.NET MVC使用IoC

    也许你会问ASP.NET MVC为什么会爱上IoC? 相爱的理由常常很简单,就像一首歌中所唱——“只为相遇那一个眼神”. 而ASP.NET MVC爱上IoC只为IoC能实现MVC控制器的依赖注入. 下 ...