javaScript编码规范 这正是本书的内容:如何站在团队的角度去写<SPAN
style=‘font-family: "Times New Roman";‘>javascript代码。目标是解决多人开发的环境中很多工程师如何书写统一风格的代码的问题。对于个人来说,需要在一定程度上牺牲个人偏好、个人观点甚至个人英雄主义,但你所收获的将是一个能做大事的高效团队。
<SPAN style=‘font-family: "Times New Roman";‘>“java语言编码规范”指出编码规范如此重要的几个原因...
1、严格区分大小写
2、语句结束可以有分号,也可以没有分号,分号不是必须,有分号更加规范。
3、// 为单行注释 /* 多行注释 */
4、变量可以不声明直接使用,变量全是变体类型
5、在js中,内置对象首字符大写,方法是从第二个单词首字母大写。
var d = new Date();
d.getFullYear();
window.alert();
window.setInterval();
window.setTimeout();
6、基于对象的高级脚本语言
浏览器对象,窗口对象,文档对象DOM ...
函数表达式//匿名函数
var anonymous = function(){
return true;
};//命名函数
var named = function named(){
return true;
}//IIFE 函数 Immediately-Invoked Function Expression
(function(){console.log('Hello!');
})();
不要再非函数块中(if while etc)声明函数,尽管浏览器允许你分配给函数一个变量,但是不同的浏览器解析方式可能不同。
ECMA-262把块定义为一组语句,但函数不是一个语句。//good
var test ;
if(aaa){
...
javascript 代码规范代码规范我们应该遵循古老的原则:“能做并不意味着应该做”。全局命名空间污染总是将代码包裹在一个立即的函数表达式里面,形成一个独立的模块。不推荐var x = 10,y = 100;console.log(window.x + ‘‘ + window.y);推荐;(function(window){‘use strict‘;var x = 10,y = 100;console.log(window.x + ‘‘ + window.y);}(window));立即执行函数在立即执行函数里面,如果有用到全局变量应该通过变量传递的方式...
http://javascript.crockford.com/code.html文章学习笔记。1、使用js文件管理代码所有代码尽量放在js文件中,然后再html文件中使用script引入,引入时注意放在body标签后面,并且不使用type或者language。2、书写缩进使用4个空白格缩进,注意不要使用tab键进行缩进。3、断句注意行长,每行不超过80个字符,超过时要进行适当断句,断句应该再操作符后面进行,最理想的是在逗号(,)后面进行断句,断句后下一行使用8格缩进。4、注解...
代码执行一般自上而下,变量需要在使用的函数段之前进行声明并赋予初值。代码规范书写: 1.选中代码段后使用Tab键,可令代码段整体向右移动一段位置(一般是4位),善用Tab键可使得代码段对齐变得更容易。代码段对齐,可读性更好。 2.等号“=”、加号“+”等数学运算符两边应空出1位。如 x = x + 1; 3.添加注释一般使用“//”。注释应简明易懂。 4.代码段合理使用空行可提升可读性...
AMD是"Asynchronous Module Definition"的缩写,意思就是"异步模块定义".AMD定义了我们所用的模块都是是异步加载的,所以我们要将依赖模块的代码片段要放在一个回调函数中,当异步加载模块完毕后(也就是此模块已可用时)触发回调函数常用的AMD库有require.js、sea.js点击这里这里有一个我自己的示例级别的AMD实现AMD标准中定义了以下两个API(1) require([module], callback);(2) define([depends], callback); require接口用来加载一...
1. 变量命名(1)变量名不应以短巧为荣左边的变量名都不太清楚,代码的扩展性不好,一旦代码需要加功能的话,就容易出现obj1、obj2、obj3这种很抽象的命名方式。所以一开始就要把变量的名字起得真实有意义,不要搞一些很短很通用的名字。(2)bool变量建议布尔变量不用以is/do之类的开头var isMobile = true,isError = true,doUpdate = false;可改成:var mobile = true,error = true,updated = false;还有其它一些常用的名称如don...
常用html、CSS、javascript前端命名规范 无意发现自己文件夹里面有这么一个文件,具体从哪里来的不记得了,仔细看下,发现总结的挺好的,贴出来分享一下。 无论是从技术角度还是开发视角,对于web前端开发规范文档都有一定规范,本文就css3和html5的发展前景总结了一系列的web开发文档,仅供大家参考。规范目的:
为提高团队协作效率, 便于后台人员添加功能及前端后期优化维护, 输出高质量的文档, 特制订此文档. 本规范文档一经确...
本规范是针对javascript函数式编程风格与公司严重依赖于jQuery进行编码的现实制定出来。禁止使用eval,with与caller(ecma262 v5 的use strict要求)。eval只允许在加密时机器生成。声明变量必须加上 var 关键字,除了在for(;;)循环等语句中,原则上不允许使用连续声明。因为连 续声明的效率不如分开声明高,而且很容易手误致其暴露到全局作用域下。常量,全部大写。兴城市费永礼品变量名,不能使用拼音,英文单词以驼峰风格组织起来...
一、javascript模块化编程规范:二、关于commenjs规范和AMD规范:根本不同:前者用于服务器端同步加载模块;后者是客户端异步加载模块。同点:两者都有一个全局函数require(),用于加载模块;只是AMD规范中的require函数需要有2个参数。三、CommonJS出现时间更早,代表有:Node.js的模块系统,就是参照CommonJS规范实现的。在CommonJS中,有一个全局性方法require(),用于加载模块。假定有一个数学模块math.js,就可以像下面这样加...
题目描述修改 js 代码中 parseInt 的调用方式,使之通过全部测试用例示例1输入‘12‘输出12示例2输入复制‘12px‘输出复制12示例3输入‘0x12‘输出0function parse2Int(num) {var type = typeof num;if (type === "number") {if (num % 1 === 0) {return num;} else {return num-num%1;}} else if (type === "string") {var s = "", n0 = "0".charCodeAt(0), n9 = "9".charCodeAt(0);for (var i = 0; i < num.length; i++) {var c ...
多行注释使用/**……*/,需要包含一个描述,所有参数的具体类型的值还有返回值。// bad
// make() returns a new element
// based on the passed in tag name
//
// @param {String} tag
// @return {Element} element
function make(tag) {// ...stuff...return element;
}// good
/**
* make() returns a new element
* based on the passed in tag name
*
* @param {String} tag
* @return {Element} element
*/
function make...
js注意点、建议与规范语句结束的";"不要省略,避免最后删除空格时报错;if else只有一句时不省略{},便于后期维护;定义将来用于保存对象的变量时,建议使用null初始化;使用parseInt()时,建议始终填写第二个参数(进制);对于parseInt(),小数点不是有效整数符号;parseFloat()忽略开头的“0”,第二次遇到小数点直接结束;switch case的比较使用全等;ECMAScript中的函数都是按值传递的,对象的值是其内存地址;建议用let和con...
1 概述CommonJS对模块的定义十分简单,主要分为模块定义、模块引用和模块标识。Nodejs的模块系统就遵循了CommonJS规范。但Node在实现中并非完全按照CommonJS规范实现,而是对模块规范进行了一定的取舍。下面,我们结合Node来深入了解CommonJS规范。2 模块定义CommonJS规范规定,一个文件就是一个模块,用module变量代表当前模块。 Node在其内部提供一个Module的构建函数。所有模块都是Module的实例。实例代码如下:function Module...