开发规范(四)JS规范

开发规范(一)目录规范
开发规范(二)命名规范及注释规范
开发规范(三)CSS规范
开发规范(四)JS规范

概述

为提高团队协作效率,规范文件管理,方便项目后期维护,提高代码质量,特制订此文档,前端开发人员必须遵照本规范进行前台页面开发。

基本规范

sublime Text3请安装jshint插件以检查JS编写错误;
安装教程:使用lint进行语法及风格校验

引号
最外层统一使用单引号。

// not goodvar x = "test";// goodvar y = 'foo',    z = '';

空行
以下几种情况需要空行:
变量声明后(当变量声明在代码块的最后一行时,则无需空行)
注释前(当注释在代码块的第一行时,则无需空行)
代码块后(在函数调用、数组、对象中则无需空行)
文件最后保留一个空行

// need blank line after variable declarationvar x = 1;// not need blank line when variable declaration is last expression in the current blockif (x >= 1) {    var y = x + 1;}var a = 2;// need blank line before line commenta++;function b() {    // not need blank line when comment is first line of block    return a;}// need blank line after blocksfor (var i = 0; i ID在变量名中全大写URL在变量名中全大写Android在变量名中大写第一个字母iOS在变量名中小写第一个,大写后两个字母常量全大写,用下划线连接构造函数,大写第一个字母jquery对象必须以$开头命名

var thisIsMyName;

var goodID;

var reportURL;

var AndroidVersion;

var iOSVersion;

var MAX_COUNT = 10;

function Person(name) {
this.name = name;
}

// not good
var body = $('body');

// good
var $body = $('body');

**前缀规范**s:表示字符串。例如:sName,sHtml;n:表示数字。例如:nPage,nTotal;b:表示逻辑。例如:bChecked,bHasLogin;a:表示数组。例如:aList,aGroup;r:表示正则表达式。例如:rDomain,rEmail;f:表示函数。例如:fGetHtml,fInit;o:表示以上未涉及到的其他对象,例如:oButton,oDate;**例外情况:**1:作用域不大临时变量可以简写,比如:str,num,bol,obj,fun,arr。2:循环变量可以简写,比如:i,j,k等。## 函数命名规范统一使用动词或者动词[+名词]形式,例如:fGetVersion(),fSubmitForm(),fInit();涉及返回逻辑值的函数可以使用is,has等表示逻辑的词语代替动词。如果有内部函数,使用__f+动词[+名词]形式,内部函数必需在函数最后定义。**对象方法实现**对象方法命名使用 f+对象类名+动词[+名词]形式;例如 fAddressGetEmail**事件响应函数**某事件响应函数命名方式为触发事件对象名+事件名或者模块名+触发事件对象名+事件名,例如:fDivClick(),fAddressSubmitButtonClick()## 其它注意事项1. 所有命名最好使用英语表示。1. 所有变量名应该明确而必要,尽量避免不必要的容易混淆的缩写。1. netease.events.mouse.Handler,而不是 netease.events.mouse.MouseEventHandler。1. 对应的方法应该使用对应的动词,例如:get/set, add/remove, create/destroy, start/stop, insert/delete, begin/end。1. 应该避免双重否定意义的变量,例如:bIsNotError, bIsNotFound,不可取。1. 变量应该在最小的范围内定义,并尽可能的保持最少的活动时间。1. 循环变量最好在循环中定义。例如for(var i=0,m=10;i++)1. 尽量避免复杂的条件语句,可以使用临时的boolean变量代替。1. 一定要避免在条件中执行语句,例如:if((i=3)>2){},不可取。1. 不要在代码中重复使用相同意义的数字,用一个变量代替#规范化、JavaScript#

版权声明

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处。如若内容有涉嫌抄袭侵权/违法违规/事实不符,请点击 举报 进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部