编写可维护的javascript代码--- 2015.11.21(基本格式化)
1.1 每行的编码需要控制在80字符。
1.2 改用;的地方必须用上。
1.3 缩进用2个制表符,不过4个也可以。
1.4 当代码一行显示不全需要折行显示,这里我暂且假定缩进为4个字符。
1.5 如果是声明变量内容需要折行,折行的内容需要与声明时没折行的对齐。
1.6 变量函数的命名用驼峰命名,常量可为全大写,单词之间用下划线隔开。
1.6.1 函数名前缀应当是动词。
1.6.2 构造函数首位应该大写。
1.7.1 字符串相接应该用 + 号 例如'aaa\'aaa\'' 这样也是可以显示元素的
1.7.2 小数点点前面或者后面的数字别乱省略 例如: 10.0 .123 这样是不推荐的
1.7.3 null是一个特殊值,在 下列场景中应当使用null;
1.用来初始化一个变量,这个变量被赋值为一个对象;
2.用来和一个已经初始化的变量比较,这个变量可以是也可以不是一个对象;
3.当函数的参数期望是对象时,用作参数传入;
4.当函数的返回值期望是对象时,用作返回值传出;
以下场景不适合使用null
1.不要使用null来检查是否传入参数;
2.不要用null检测一个未初始化的变量;
1.7.4 null==undefined 结果是true,然而这俩个值的用途并不相同,那些没有初始化的变量都有一个初始值,即undefined
1.尽量不要用undefined和初始变量做比较,虽然它等于true
2.初始变量用null,它最终很可能赋值为对象。typeof运算符运算null的类型时返回object,这样就可以和undefined区分开了
1.7.5 创建对象最流行的方法是:var a = new object();
不推荐的写法
var book = new Object();
book.title = '12';
book.text = 'tex';
对象直接量允许将所有的属性都括在一个花括号内
var json = {
title: '12',
text: 'tex'
};
1.7.6 数组不推荐写法:
var arr = new Array('a','b','c');
var arr = new Array(1,2,3);
推荐的写法
var arr = ['a','b','c'];
var arr = [1,2,3];
编写可维护的javascript代码--- 2015.11.21(基本格式化)的更多相关文章
- 编写可维护的javascript代码--- 2015.11.22(注释)
1.单行注释 // 这是一句单行注释 2.多行注释 /* 这里是代码 */ /* 这里都是注释 1232132 */ java的注释风格 /* * 另一段注释 * 这段注释包含2 ...
- 编写可维护的JavaScript代码(部分)
平时使用的时VS来进行代码的书写,VS会自动的将代码格式化,所有写了这么久的JS代码,也没有注意到这些点.看了<编写可维护的javascript代码>之后,做了些笔记. var resul ...
- 读《编写可维护的JavaScript》第11章总结
这周也是拿到了同程的offer,从此走上了前端之路!感谢我的贵人们.再次纪念一下~! 第11章 不是你的对象不要动 11.1 什么是你的 你的对象:当你的代码创建了这些对象或者你有职责维护其他人的代码 ...
- 编写可维护的javascript代码---开篇(介绍自动报错的插件)
文章开篇主要推荐了2款检测编程风格的工具: JSLint和JSHint: jsLint是由Douglas Crockford创建的.这是一个通用的javascript代码质量检测工具,最开始JSLin ...
- 编写可维护的JavaScript代码
1. 1)for-in循环用来遍历对象属性.不仅遍历对象的实例属性,还遍历从原型继承来的属性. 所以最好使用hasOwnProperty()方法来过滤. 2) for in循环遍历出的对象属性不能保 ...
- 编写可测试的JavaScript代码
<编写可测试的JavaScript代码>基本信息作者: [美] Mark Ethan Trostler 托斯勒 著 译者: 徐涛出版社:人民邮电出版社ISBN:9787115373373上 ...
- 《编写可维护的JavaScript》之编程实践
最近读完<编写可维护的JavaScript>,让我受益匪浅,它指明了编码过程中,需要注意的方方面面,在团队协作中特别有用,可维护性是一个非常大的话题,这本书是一个不错的起点. 本书虽短,却 ...
- 《编写可维护的javascript》读书笔记(中)——编程实践
上篇读书笔记系列之:<编写可维护的javascript>读书笔记(上) 上篇说的是编程风格,记录的都是最重要的点,不讲废话,写的比较简洁,而本篇将加入一些实例,因为那样比较容易说明问题. ...
- 《编写可维护的javascript》读书笔记(上)
最近在读<编写可维护的javascript>这本书,为了加深记忆,简单做个笔记,同时也让没有读过的同学有一个大概的了解. 一.编程风格 程序是写给人读的,所以一个团队的编程风格要保持一致. ...
随机推荐
- C# RAS 非对称加密类 支持长字符串
/// <summary> /// ikmb@163.com /// </summary> public class MyRAS { /// <summary> / ...
- SRM 506(2-1000pt)
DIV2 1000pt 题意:一个由n*m的网格组成的棋盘,有四种点,'.'表示空点,'#'表示是墙不能走,'$'表示起点(同样是空点),'1'~'9'表示该点有复活时间为t的怪兽.每次,可以从一个点 ...
- Geometric Shapes (poj3449多边形相交)
题意:给你一些多边形的点,判断每个多边形和那些多边形相交,编号按照字典序输出 思路:枚举每个多边形的每条边看是否相交,这里的相交是包括端点的,关键是给你正方形不相邻两个点求另外两个点怎么求,长方形给你 ...
- SVN强制注释
1.目的 在使用SVN作为版本控制的时候,强制提交的人员写注释,这样能确保每次提交都有注释,方便查看 2.解决办法 2.1给工程加上属性 2.1.1在工程提交之后,通过客户端 ...
- Oracle中alter system命令参数之scope
SCOPE The SCOPE clause lets you specify when the change takes effect. Scope depends on whether you s ...
- idea unknow facet type web 解决方案
菜单 -->Preferences-->Plugins 添加tomcat支持 如图: 然后 项目project-setting中 可以添加 web类型的facets了 pasting
- sql第一课笔记
这是我看了imooc的视频教程之后重新写的笔记. 虽然之前也是学习过SQL Server数据库,但是也是忘记得差不多了.现在重新捡起来,安装一次数据库练习,使用的是mysql. 第一课是最简单的创建, ...
- S2SH框架集成详解(Struts 2.3.16 + Spring 3.2.6 + Hibernate 3.6.10)
近期集成了一次较新版本的s2sh,出现了不少问题,网上资料也是良莠不齐,有的甚至就是扯淡,简单的把jar包扔进去就以为是集成成功了,在这里整理一下详细的步骤,若哪位有什么不同看法,可以留言,欢迎批评改 ...
- composer 说明<转>
转自 http://blog.csdn.net/zzulp/article/details/18981029 Composer是一个基于项目的依赖管理器,负责将PHP项目所依赖的包或库安装到项目所在 ...
- zabbix图中出现中文乱码问题
我这周部署了zabbix监控服务器,但是配置过程中发现当有中文时,图中的中文会变成方块 如下图所示: 这个问题是由于zabbix的web端没有中文字库,我们最需要把中文字库加上即可 解决办法如下 1. ...