编写可维护的JavaScript-随笔(一)
一、基本的格式化
1、 缩进层级
a) 制表符缩进
i. 好处:制表符和缩进层级是一对一的关系是符合逻辑的,文本编辑器可以配置制表符的展示长度,可以随意调节
ii. 坏处:不同系统相同编辑器打开文件时看到的是不相同的缩进
b) 空格符缩进:基本分为2空格、4空格、8空格
i. 好处:在不同的系统和编辑器中展示是相同的,编辑器可以配置按tab插入几个空格
ii. 缺点:对于没有可配置的编辑器的开发者书写代码的方式很原始
2、 语句结尾:js要么独占一行,要么以分号结尾
a) Js有自动分号插入机制(ASI),这种机制可以帮助减少代码错误,在没有分号的时候自动插入,
b) 但是ASI的插入分号的规则非常复杂并且难记所以推荐不省略分号。
3、 行的长度
a) 一行的代码太长的话会出现滚动条,阅读代码的时候很别扭
b) 其他编程语言中都有限制每行的字符的,但是js没有,所以js为了JSlint规范中指定一行的长度为80字符
4、 换行:
a) 当一行的长度超过80字符的时候需要进行换行
b) 下一行会增加两个层级的缩进
c) 在运算符后换行(逗号是一个运算符)
d) 例外:当变量赋值时第二行的位置应该与赋值运算符的位置保持对齐
5、 空行
a) 两段代码的语义不相关时应该使用空行隔开
b) 方法之间
c) 方法中的局部变量和第一条语句之间
d) 多行或者单行注释之前
e) 方法中的逻辑片段之间插入空行,提高可读性
6、 命名
a) JavaScript的核心ECMAscript遵照了驼峰命名法,小写字母开始,后边每个单词首字母大写
b) 变量名前缀使用名词,函数名前缀使用动词
c) 命名长度尽可能短并抓住要点
d) 构造函数以大写字母开头,用来区分变量和普通函数
7、 直接量
a) 字符串:创建多行字符串时使用+将字符串分成多个进行拼接,而不是使用换行符
b) 数值:为了避免歧义不要省略小数点之前或之后的数字,避免使用八进制直接量
c) 对象:第一行左花括号,每个属性名值对独占行并保持一个缩进,右花括号独占一行
d) 数组:使用方括号将数组元素初始值括起来,替代使用构造函数方法创建数组
编写可维护的JavaScript-随笔(一)的更多相关文章
- 【读书笔记】读《编写可维护的JavaScript》 - 编程实践(第二部分)
本书的第二个部分总结了有关编程实践相关的内容,每一个章节都非常不错,捡取了其中5个章节的内容.对大家组织高维护性的代码具有辅导作用. 5个章节如下—— 一.UI层的松耦合 二.避免使用全局变量 三.事 ...
- 《编写可维护的JavaScript》之编程实践
最近读完<编写可维护的JavaScript>,让我受益匪浅,它指明了编码过程中,需要注意的方方面面,在团队协作中特别有用,可维护性是一个非常大的话题,这本书是一个不错的起点. 本书虽短,却 ...
- 编写可维护的Javascript读书笔记
写在前面:之前硬着头皮参加了java方面的编程规范培训,收货良多,工作半年有余的时候,总算感觉到一丝丝Coding之美,以及造轮子的乐趣,以至于后面开发新功能的时候,在Coding style方面花了 ...
- 《编写可维护的javascript》读书笔记(中)——编程实践
上篇读书笔记系列之:<编写可维护的javascript>读书笔记(上) 上篇说的是编程风格,记录的都是最重要的点,不讲废话,写的比较简洁,而本篇将加入一些实例,因为那样比较容易说明问题. ...
- 《编写可维护的javascript》读书笔记(上)
最近在读<编写可维护的javascript>这本书,为了加深记忆,简单做个笔记,同时也让没有读过的同学有一个大概的了解. 一.编程风格 程序是写给人读的,所以一个团队的编程风格要保持一致. ...
- 编写可维护的JavaScript 收纳架
如果你看过Nicolas C.Zakas写过的任何作品,你必须承认他是个不折不扣的天才.也只有天才级的才能写出<JavaScript高级程序设计>让所有的前端攻城师人手一本.Nicolas ...
- 编写可维护的JavaScript之编程风格
在团队中只有每个人的编程风格一致,大家才能方便的互相看懂和维护对方的代码. 1. 层级缩进 对于层级缩进目前有两种主张:1)使用制表符这种方法有两种好处,第一,制表符和缩进层级之间是一一对应关系,符合 ...
- 《编写可维护的JavaScript》 笔记
<编写可维护的JavaScript> 笔记 我的github iSAM2016 概述 本书的一开始介绍了大量的编码规范,并且给出了最佳和错误的范例,大部分在网上的编码规范看过,就不在赘述 ...
- 编写可维护的JavaScript代码(部分)
平时使用的时VS来进行代码的书写,VS会自动的将代码格式化,所有写了这么久的JS代码,也没有注意到这些点.看了<编写可维护的javascript代码>之后,做了些笔记. var resul ...
- 推荐一本好书:编写可维护的JavaScript(可下载)
目录 推荐一本好书:编写可维护的JavaScript(可下载) 书摘: 下载: 有些建议: 推荐一本好书:编写可维护的JavaScript(可下载) 书摘: 很多设计模式就是为了解决紧耦合的问题.如果 ...
随机推荐
- 用 tomcat 部署 Jenkins
在tomcat 下面部署 Jenkins 版本 tomcat (7.0.94) + jdk (7) + jenkins (2.46.3) 前两次没有部署成功,应该是 jdk 版本的问题, 如果不成功 ...
- Spring Cloud微服务安全实战_00_前言
一.前言: 一直以来对服务安全都很感兴趣,所以就学习.这是学习immoc的 jojo老师的 <Spring Cloud微服务安全实战课程>的笔记,讲的很好. 课程简介: 二.最终形成的架 ...
- 9.consul获取服务实例,调用测试
package main import ( "context" "fmt" "github.com/go-kit/kit/endpoint" ...
- axios post方式请求x-ww格式的数据
//使用axios时,要确定是json格式还是x-www格式的,axios默认是json格式的,如果是x-ww格式需要做如下配置: let url = "/hehe/site/getcomm ...
- linux网络编程之用socket实现简单客户端和服务端的通信(基于UDP)
单客户端和服务端的通信(基于UDP) 代码 服务端代码socket3.c #include<sys/types.h> #include<sys/socket.h> #inc ...
- 在eclipse中新建java问题报错:The type XXX cannot be resolved. It is indirectly referenced from required .class files
在Eclipse中遇到The type XXX cannot be resolved. It is indirectly referenced from required .class files错误 ...
- makefile通用版本(三)
DIR_INC = ./include DIR_SRC = ./src DIR_OBJ = ./obj DIR_BIN = ./bin DIR_LIB = -Wl,-rpath=/home/exbot ...
- vb.net 读取 excel
Dim myConn AsNew ADODB.Connection myConn.CursorLocation = ADODB.CursorLocationEnum.adUseClient ' 用 ...
- spring学习-ApplicationContext-spring上下文深入理解
4月份开始复习一遍spring相关知识.让自己巩固一下spring大法的深奥益处,所以就看了大佬的博客,转载留下来日后继续研读.认为重点的标记为红色 以下文章内容转载自:http://www.cnbl ...
- @RequestMapping 用法详解
简介: @RequestMapping RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上.用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径. RequestM ...