编写可维护的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>这本书,为了加深记忆,简单做个笔记,同时也让没有读过的同学有一个大概的了解. 一.编程风格 程序是写给人读的,所以一个团队的编程风格要保持一致. ...
随机推荐
- datagridview bindingsource刷新数据
调用bindindsource的ResetBindings() 方法
- 虚拟机linux配置nginx 为什么win7通过Ip访问不到
第一步,你应该先检查网络win机ping linux机,通了进行下一步第二步,检查端口netstat -antl | grep 你开启的服务端口比如你开了http,那就是80端口或者你自定义的端口,我 ...
- Linux下profile environment bashrc的区别
先将export LANG=zh_CN加入/etc/profile ,退出系统重新登录,登录提示显示英文.将/etc/profile 中的export LANG=zh_CN删除,将LNAG=z ...
- Python里的map、reduce、filter、lambda、列表推导式
Map函数: 原型:map(function, sequence),作用是将一个列表映射到另一个列表, 使用方法: def f(x): return x**2 l = range(1,10) map( ...
- C#中反射接受的字符串需要满足的Backus-Naur Form语法
MSDN的Specifying Fully Qualified Type Names指明了C#中反射接受的字符串需要满足如下的Backus-Naur Form语法. BNF grammar of fu ...
- WinForm自定义验证控件
本文转载:http://blog.csdn.net/ziyouli/article/details/7583824 此篇博文不错:http://blog.csdn.net/sony0732/artic ...
- RESTEasy + JBOSS 7 Hello world application---reference
RESTEasy is JBOSS provided implementation of JAX-RS specification for building RESTful Web Services ...
- 从零开始写一个Tomcat(叁)--请求解析
挖坑挖了这么长时间也该继续填坑了,上文书讲到从零开始写一个Tomcat(贰)--建立动态服务器,讲了如何让服务器解析请求,分离servlet请求和静态资源请求,读取静态资源文件输出或是通过URLCla ...
- vim 学习相关记录
VIM 相关内容****************** vim 的三个模式: 编辑模式 --> 输入模式 --> 末行模式 编辑模式: 通常键入键盘值被理解成一个操作; 如: dd(删除行) ...
- Android(java)学习笔记237:多媒体之图形的变化处理
1.图形的缩放 (1)布局文件activity_main.xml如下: <LinearLayout xmlns:android="http://schemas.android.com/ ...