代码规范概要
1。Javascript代码应符合豆瓣JSLint测试标准1-1。语句必须有分号结束,除非,函数,如果,开关,尝试,同时
1-2。声明只能考虑长时间的休息,如:
templ_songlist.replace({表},{ 'results DA的})
。({ }取代prev_num,沪指)
。({ }取代next_num,下)
。({ }取代current_num,电流)
。({ }取代total_num,DA。page_total);
为了避免冲突,检查机制和JSLint。这种运算符+或在行结束时,上述代码应改为:
templ_songlist.replace({表},{ 'results DA的})。
({ }取代prev_num,沪指)。
({ }取代next_num,下)。
({ }取代current_num,电流)。
({ }取代total_num,DA。page_total);
1-3。避免额外的逗号,如:var arr = { 1,2,3,};
所有1-4的身体和判断事物都需要封闭在{ }中:
uff1a错
如果(条件)
声明;
或
如果(条件)语句;
对:
如果(条件){
声明;或
如果(条件){语句;}
在1-5。在环体的hasownproperty方法必须被用来检查是否一个构件本身的成员。避免原型链污染。
1-6。变量声明。变量声明应该位于函数的顶部。避免使用未声明的变量。
uff1a错
如果(n = 0){
VaR的有效=真;
是uff1a
VaR的有效性;
如果(n = 0){
有效=真;
}
1-7。不要用,虚空,邪恶。
1-8。使用严格的条件标识符,!=相反。
以下类型的对象1-9。不建议使用新的新的数字,新的结构:字符串,新布尔,新对象(使用新数组({取代}),{代替})。
1-10。引用对象成员替换obj { PROP1 }与obj.prop1除非属性名称是一个变量。
注:豆瓣JSLint是自定义JSLint
注意:如果模块代码,使用其他的全局变量跳过JSLint的支票,你可以添加一个声明文件,如:
2。Javascript的命名规则
2-1的第一个字母。构造函数是大写的:
函数对话框(配置){
声明;
} var DLG =新的对话框({…});
2-2的属性或方法名。对象是下骆驼案例,例如init
dialog.prototype = { {
init:(函数){ },
BindEvent:(功能){ },
updateposition:(功能){ } };
2-3。私有变量的名字开始与强调。例如,_current
2-4。常数的名称都是大写字母,而词是用下划线分隔。如:css_btn_close,txt_loading
2-5的前缀。变量名:
前缀
元
例子
整数
nvariablename
我,J,K,M,N,等等
作为计数器/迭代器的整数
(i = 0;i < = oarray.length;i++)
字符串
svariablename
对象
oobjectname
是,能,有
布尔
{姓名} conditionname布尔
事件的方法
事件附件
{ } _methodname事件类型
访问器方法
getmethodname
访问器方法
setmethodname
注意:只有计数器/迭代器应该使用单个字母指定。
三.code formatting requirements
3-1中的必要空格和缩进。陈述
3-1-1。用于包含语句的() 。
3-1-2。 之前和之后需要遵循的空间
不好的:
对于(在选定的T){ if(!哈希{T})取消(T)}
好的:
对于(在选定的t){
如果(!散列{ }){
取消选择(T);}
3-2。声明由换行符:
不好的:
的templ_songlist.replace({表},{ 'results DA的}),({ }取代prev_num,沪指)。取代({ next_num },下),({ }取代current_num,下)=
好的:
templ_songlist.replace({表},{ 'results DA的})。
({ }取代prev_num,沪指)。
({ }取代next_num,下)。
({ }取代current_num,电流)。
({ }取代total_num,DA。page_total);
3-3。格式化对象参数:
不好的:
EmbedSWF(ID, / / player30792 SWF。swfurl ={网址:+ el.href,宽度:261,高度:30,参数:{ wmode:'transparent'} {属性:ID,玩家样本+我的名字:+我的球员样本} });
很好:
复制代码代码如下所示:
EmbedSWF(ID,{
网址: / / player30792 SWF。swfurl =+ el.href,
宽度:261,
身高:30,
参数:{ wmode:'transparent},
属性:{
id:播放器样本+ i,
名称:播放器样本+ i
});