1、js注释规范竭诚为您提供优质文档/双击可除js注释规范篇一:js编码规范js编码规范原文:codeconentionsforthejavascriptprogramminglanguage这是一篇javascript编程代码规范,它由sun公司的文档codeconventionsforthejavaprogramminglanguage激发而来。由于javascriptisnotjava,这篇规范和java规范相比有很大改动。代码质量在软件质量中占很大比例。在软件生命周期里,一个程序会被许多人接手。如果一个程序可以很好的表达自己的结构和特性,则在不久的将来修改它时就会减少程序崩溃的可能。代码规
2、范可以帮助减少程序的脆弱性。我们所有的javascript代码都直接发布给公众,它应该具有发布质量。neatnesscounts.目录:javascript文件缩进行宽注释变量声明方法声明命名语句-简单语句-复合语句-标签-return语句-if语句-for语句-while语句-do语句-switch语句-try语句-continue语句-with语句空格额外的建议-和-逗号操作符-块作用域-赋值表达式-=和!=操作符-令人混淆的加和减-邪恶的evaljavascript文件javascript程序应该作为一个.js文件存储和发布。javascript代码不应该嵌入在html文件里,除非那些代
3、码是一个单独的会话特有的。html里的javascript代码大大增加了页面的大小,并且很难通过缓存和压缩来缓解。标签应该在body里越靠后的位置越好。这减少了由于加载script而导致的其它页面组件的延迟。没有必要使用language或者type属性。由服务器而不是script标签来决定mime类型。缩进缩进的最小单位是4个空格。不要使用tab键,because(asofthiswritinginthe21stcentury)therestillisnotastandardfortheplacementoftabstops.使用空格会引起文件变大,但是这点大小对局域网无关紧要,而且差别被mi
4、nification消除了。行宽不要让一行代码超过80个字符。当一条语句不能在单独一行写完时,可能有必要拆分它。在操作符后进行拆分,最好是在逗号后面拆分。操作符后面进行拆分减少了通过插入分号伪装copy-paste错误的可能性。下一行应该缩进8个空格。注释慷慨的写注释。留下一些供需要理解你做了什么的人们(可能是你自己)下次阅读的信息是有用的。注释应该书写良好和清晰,就像它们标注的代码一样。偶尔小幽默一把也是可以的。挫折和怨恨就别写了。更新注释非常重要。错误的注释让程序更难读懂和理解。让注释有意义。更多的关注于不能马上可见的东西。不要用如下内容浪费读者的时间:java代码1.i=0;/setit
5、ozero.一般使用行注释。把块注释用于正式文档或外部注释。变量声明所有的变量应该在使用前声明。javascript不强求这点,但是这样做会让程序更易读,并且会让探测未声明的可能变成隐式的globals的变量更容易。var语句应该为方法体内的第一个语句。每个变量声明应该自己占一行并有注释。它们应该按字母顺序排列。java代码1.varcurrententry;/currentylyselectedtableentry2.varlevel;/indentationlevel3.varsize;/sizeoftablejavascript没有块作用域,所以在块里定义变量可能会让有其它c家族语言经验
6、的程序员迷惑。在方法顶端定义所有变量。尽量少使用全局变量。隐式的全局变量应该从来不使用。方法声明所有的方法应该在它们使用前声明。内部方法应该位于var语句后面。这让哪些变量包含在它的scope里更清楚。方法名和参数列表的“(”(左圆括号)之间不应该有空格。在“)”(右圆括号)和“”(左大括号)之间有一个空格。方法体本身缩进4个空格。“”(右大括号)应该和方法声明处对齐。java代码1.functionouter(c,d)2.vare=c*d;3.4.functioninner(a,b)5.return(e*a)+b;6.7.8.returninner(0,1);9.这个规范可以和javascr
7、ipt很好的工作,因为在javascript里方法和对象字面量可以放在允许表达式的任何位置。它使用内部方法和复杂结构提供最好的可读性。java代码1.functiongetelementsbyclassname(classname)2.varresults=;3.walkthedom(document.body,function(node)4.vara;/arrayofclassnames5.varc=node.classname;/thenodesclassname6.vari;/loopcounter7./ifthenodehasaclassname,thensplititintoalis
8、tofsimplenames.8./ifanyofthemmatchtherequestedname,thenappendthenodetothesetofresults.9.if(c)10.a=c.split();11.for(i=0;i12.if(ai=classname)13.results.push(node);14.break;15.16.17.18.);19.returnresults;20.如果一个方法字面量为匿名的,则在“function”和“(”(左圆括号)之间应该有一个空格。如果省略空格,则它可能看起来方法名是“function”,而这是错误的。java代码1.div.on
9、click=function(e)2.returnfalse;3.;4.that=5.method:function()6.returnthis.datum;7.,8.datum:0;9.;尽量少用全局方法。命名命名应该由26个大小写字母(a.z,a.z),10个数字(0.9)和_(下划线)组成。不要使用国际字符,因为它们可能不易读或者不能在任何地方都能容易理解。不要在名字里使用$(美元符号)或(反斜线符号)。不要使用_(下划线)作为名字的首字母。它有时被用来表示私有,但是它实际上不提供私有性。如果私有性很重要,使用提供私有性的privatemembers。avoidcon(js注释规范)ve
10、ntionsthatdemonstratealackofcompetence.大多数变量和方法名应该以小写字母开始。必须使用new前缀的构造函数应该以大写字母开始。javascript不会在省略new时报编译期警告或运行时警告。不使用new时会发生坏事情,所以大写首字母规范是我们拥有的唯一的防御。全局变量应该全部使用大写字母。(javascript没有宏或常量,所以没有多少要求使用大写字母来表示javascript的特性的场景)语句简单语句每行应该包含至少一个语句。在每个简单语句末尾添加一个“;”(分号)。注意一个给方法字面量或对象字面量赋值的赋值语句仍然是一个赋值语句,所以也必须以分号结尾。
11、javascript允许任何表达式作为语句使用。这可能产生一些错误,特别是在插入分号时。唯一可以当作语句使用的表达式是赋值表达式和调用表达式。复合语句复合语句是包含一个用“”(大括号)包围语句列表的的语句。1,包围的语句应该再缩进4个空格。2,“”(左大括号)应该位于开始复合语句的行的末尾。3,“”(右大括号)应该新起一行并且和相匹配的“”所在那行的起始位置对齐4,当语句是控制结构的一部分时,所有语句都应该用括号包围,即使是单行语句,例如if或for语句。这让添加语句更容易而且不会引起八哥。标签语句标签是可选的。只有如下语句需要被标签标识:while,do,for,switch。return语
12、句篇二:js规范文档alibabajapanjs开发规范entry1.全站采用jquery作为js库,版本和版本号:1.2.6/mini,请不要修改此文件的任何内容。对此文件的任何修改都将会通过邮件通知到每一个开发人员。位置:http:/image.alibaba.co.jp/js/jquery.js。2.公用common.js,用于基于全站的最通用和最基本的脚本(如顶部下拉菜单,底部添加到收藏夹等),替代base.js,请不要修改此文件。对此文件的任何修改都将会通过邮件通知到每一个开发人员。位置:http:/image.alibaba.co.jp/js/common.js。3.js代码必须基
13、于jquery进行构建(新页面和被维护页面)4.放弃使用prototype。考虑到不可预料的冲突问题,网站禁止使用其它的js框架(包括yui),新的头部文件将调用jquery.js和common.js文件。5.js代码必须和xhtml结构分离。1消息处理2跟踪/统计代码3js必须内置的特殊a)js独立于xhtml结构之外,除情况以外,js脚本必须分离于页面之外。b)js脚本中的服务器变量/参数使用json进行脚本外置处理。注意:json方法请注意格式问题。6.分离于页面之外的js文件必须采用utf-8无bom格式编码,否则极其容易出现不可预知的乱码问题。维护已存在的js脚本文件必须把非utf编
14、码转换成规范要求的utf-8无bom格式。7.事件监听采用jquery的高效监听机制。除极其特殊的要求外,禁止在脚本中出现onclick,onfoucs等事件。8.开发javascript必须考虑兼容性问题,至少兼容ie6/7,Firefox2/3,主要表现在:dom结构细微差异,event对象机制差异,以及少数内置方法差异方面。9.拥有良好的注释习惯:a)自己的代码核心部分要写明作用。b)修改他人的代码和新增代码请注明日期和修改人,原注释根据需要删除或保留。c)注释使用英文注释,非英文注释可能会导致意外的乱码问题。d)js文件头,函数,算法等地方都必须加上注释。10.格式请严格按照限定的格式
15、书写。a)禁止向标签添加language属性,必须加入type属性。b)外部调用的js,确保先加载jquery.js再加载基于jquery开发的脚本,否则报错。11.维护已有页面时候,必须修正旧有页面存在的不符合js规范的问题。12.js文件必须按照它针对的功能模块进行分目录归档案。js根目录位于:webrootjs:a)基于全站的js文件存放到js根目录下;b)其它的js文件按照对应的功能进行存放如:禁止按照项目名称或代号对js进行归档。篇三:js开发规范js开发规范北京华胜天成科技股份有限公司20xx年6月目录一编码规范.31.1空格.31.2注释.41.3空行.4二命名规则.62.1约定
16、.62.2简单的应用程序命名规则.7三语句.83.1表达式.83.2效率.8四函数设计.84.1参数.84.2返回值.94.3.其它建议.9五jsdoc注释规范.9六命名空间约定.10七文件命名.10附录一js注释模板.10附录二yuicompressor使用文档.10附录三jsdoctoolkit使用方法.10一编码规范1.1空格【规则1】括号“函数名之后不要留空格,紧跟左(”,以与关键字区别,如:样例:alert(roast);/t和(之间无空格【规则2】“,”之后要留空格。如果“;”不是一行的结束符号,其后要留空格,如:样例:function(x,y,z);For(initializat
17、ion;condition;update)【规则3】带参函数的“(”和“)”前后应当加空格,如:样例:alert(“roast”);【规则4】赋值操作符、比较操作符、算术操作符、逻辑操作符、位域操作符,如“=”、“+=”“=”、“【规则6】关键字后面跟“(”时应该用一个空格隔开,如:样例:for(vari=0;i【规则7】如果函数是匿名函数,则在function和“(”之间应有一个空格。如果省略了空格,否则会让人感觉函数名叫作function,如:样例:div.onclick=function(e)returnmethod:function()returnthis.datum;,datum:0
18、;1.2注释【规则1】如果代码本来就是清楚的,则不必加注释。否则多此一举,令人厌烦。【规则2】边写代码边注释,修改代码同时修改相应的注释,以保证注释与代码的一致性。不再有用的注释要删除。【规则3】注释应当准确、易懂,防止注释有二义性。错误的注释不但无益反而有害。【规则4】尽量避免在注释中使用缩写,特别是不常用缩写。【规则5】当代码比较长,特别是有多重嵌套时,应当在一些段落的结束处加注释,便于阅读。1.3空行【规则1】在每个函数定义结束之后都要加空行,如:样例:functiongood()/空行/*.*/functiontest()【规则2】不同的功能实现间应当空行,便于代码的浏览,如:样例:functionfunc()/获取和设置相关的属性功能varid=$(id);id.styleid.value./此处应当空一行/其它小功能区【规则3】在一个函数体内,逻辑上密切相关的语句之间不加空行,其它地方应加空行分隔,如:样例:functionfunc()/以下三行为相同小功能,不应空行varid=$(id);id.styleid.value./此处应当空一行/其它小功能区1.4缩进【规则1】函数程序体应缩进四个空格,tab键为4个空格,以tab键作为缩进单位,
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1