js注释规范.docx

上传人:b****0 文档编号:12505702 上传时间:2023-04-19 格式:DOCX 页数:10 大小:20.05KB
下载 相关 举报
js注释规范.docx_第1页
第1页 / 共10页
js注释规范.docx_第2页
第2页 / 共10页
js注释规范.docx_第3页
第3页 / 共10页
js注释规范.docx_第4页
第4页 / 共10页
js注释规范.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

js注释规范.docx

《js注释规范.docx》由会员分享,可在线阅读,更多相关《js注释规范.docx(10页珍藏版)》请在冰豆网上搜索。

js注释规范.docx

js注释规范

竭诚为您提供优质文档/双击可除

js注释规范

  篇一:

js编码规范

  js编码规范

  原文:

codeconentionsforthejavascriptprogramminglanguage

  这是一篇javascript编程代码规范,它由sun公司的文档codeconventionsforthejavaprogramminglanguage激发而来。

  由于javascriptisnotjava,这篇规范和java规范相比有很大改动。

  代码质量在软件质量中占很大比例。

在软件生命周期里,一个程序会被许多人接手。

如果一个程序可以很好的表达自己的结构和特性,则在

  不久的将来修改它时就会减少程序崩溃的可能。

  代码规范可以帮助减少程序的脆弱性。

  我们所有的javascript代码都直接发布给公众,它应该具有发布质量。

  neatnesscounts.

  目录:

  javascript文件

  缩进

  行宽

  注释

  变量声明

  方法声明

  命名

  语句

  -简单语句

  -复合语句

  -标签

  -return语句

  -if语句

  -for语句

  -while语句

  -do语句

  -switch语句

  -try语句

  -continue语句

  -with语句

  空格

  额外的建议

  -{}和[]

  -逗号操作符

  -块作用域

  -赋值表达式

  -===和!

==操作符

  -令人混淆的加和减

  -邪恶的eval

  javascript文件

  javascript程序应该作为一个.js文件存储和发布。

  javascript代码不应该嵌入在html文件里,除非那些代码是一个单独的会话特有的。

html里的javascript代码大大增加了页面的大小,并且

  很难通过缓存和压缩来缓解。

  标签应该在body里越靠后的位置越好。

这减少了由于加载script而导致的其它页面组件的延迟。

没有必要使用

  language或者type属性。

由服务器而不是script标签来决定mime类型。

  缩进

  缩进的最小单位是4个空格。

不要使用tab键,because(asofthiswritinginthe21stcentury)therestillisnotastandard

  fortheplacementoftabstops.使用空格会引起文件变大,但是这点大小对局域网无关紧要,而且差别被minification消除了。

  行宽

  不要让一行代码超过80个字符。

当一条语句不能在单独一行写完时,可能有必要拆分它。

在操作符后进行拆分,最好是在逗号后面拆分。

  操作符后面进行拆分减少了通过插入分号伪装copy-paste错误的可能性。

下一行应该缩进8个空格。

  注释

  慷慨的写注释。

留下一些供需要理解你做了什么的人们(可能是你自己)下次阅读的信息是有用的。

注释应该书写良好和清晰,就像它们

  标注的代码一样。

偶尔小幽默一把也是可以的。

挫折和怨恨就别写了。

  更新注释非常重要。

错误的注释让程序更难读懂和理解。

  让注释有意义。

更多的关注于不能马上可见的东西。

不要用如下内容浪费读者的时间:

  java代码

  1.i=0;//setitozero.

  一般使用行注释。

把块注释用于正式文档或外部注释。

  变量声明

  所有的变量应该在使用前声明。

javascript不强求这点,但是这样做会让程序更易读,并且会让探测未声明的可能变成隐式的globals的

  变量更容易。

  var语句应该为方法体内的第一个语句。

  每个变量声明应该自己占一行并有注释。

它们应该按字母顺序排列。

java代码

  1.varcurrententry;//currentylyselectedtableentry

  2.varlevel;//indentationlevel

  3.varsize;//sizeoftable

  javascript没有块作用域,所以在块里定义变量可能会让有其它c家族语言经验的程序员迷惑。

在方法顶端定义所有变量。

  尽量少使用全局变量。

隐式的全局变量应该从来不使用。

  方法声明

  所有的方法应该在它们使用前声明。

内部方法应该位于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.}

  这个规范可以和javascript很好的工作,因为在javascript里方法和对象字面

  量可以放在允许表达式的任何位置。

它使用内部方法和复杂

  结构提供最好的可读性。

  java代码

  1.functiongetelementsbyclassname(classname){

  2.varresults=[];

  3.walkthedom(document.body,function(node){

  4.vara;//arrayofclassnames

  5.varc=node.classname;//thenodesclassname

  6.vari;//loopcounter

  7.//ifthenodehasaclassname,thensplititintoalistofs

  implenames.

  8.//ifanyofthemmatchtherequestedname,thenappendthenod

  etothesetofresults.

  9.if(c){

  10.a=c.split();

  11.for(i=0;i  12.if(a[i]===classname){

  13.results.push(node);

  14.break;

  15.}

  16.}

  17.}

  18.});

  19.returnresults;

  20.}

  如果一个方法字面量为匿名的,则在“function”和“(”(左圆括号)之间应该有一个空格。

如果省略空格,则它可能看起来方法名是

  “function”,而这是错误的。

  java代码

  1.div.onclick=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注释规范)ventionsthatdemonstratealackofcompetence.

  大多数变量和方法名应该以小写字母开始。

  必须使用new前缀的构造函数应该以大写字母开始。

javascript不会在省略new时报编译期警告或运行时警告。

  不使用new时会发生坏事情,所以大写首字母规范是我们拥有的唯一的防御。

  全局变量应该全部使用大写字母。

(javascript没有宏或常量,所以没有多少要求使用大写字母来表示javascript的特性的场景)

  语句

  简单语句

  每行应该包含至少一个语句。

在每个简单语句末尾添加一个“;”(分号)。

注意一个给方法字面量或对象字面量赋值的赋值语句仍然是

  一个赋值语句,所以也必须以分号结尾。

  javascript允许任何表达式作为语句使用。

这可能产生一些错误,特别是在插入分号时。

唯一可以当作语句使用的表达式是赋值表达式和

  调用表达式。

  复合语句

  复合语句是包含一个用“{}”(大括号)包围语句列表的的语句。

  1,包围的语句应该再缩进4个空格。

  2,“{”(左大括号)应该位于开始复合语句的行的末尾。

  3,“}”(右大括号)应该新起一行并且和相匹配的“{”所在那行的起始位置对齐

  4,当语句是控制结构的一部分时,所有语句都应该用括号包围,即使是单行语句,例如if或for语句。

这让添加语句更容易而且不会引起八哥。

  标签

  语句标签是可选的。

只有如下语句需要被标签标识:

while,do,for,switch。

  return语句

  篇二:

js规范文档

  alibabajapanjs开发规范

  entry

  1.全站采用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代码必须基于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编码转换成规范要求的utf-8无bom格式。

  7.事件监听采用jquery的高效监听机制。

  除极其特殊的要求外,禁止在脚本中出现onclick,onfoucs等事件。

  8.开发javascript必须考虑兼容性问题,至少兼容ie6/7,Firefox2/3,

  主要表现在:

dom结构细微差异,event对象机制差异,以及少数内置方法差异方面。

  9.拥有良好的注释习惯:

  a)自己的代码核心部分要写明作用。

  b)修改他人的代码和新增代码请注明日期和修改人,原注释根据需要删除或保留。

  c)注释使用英文注释,非英文注释可能会导致意外的乱码问题。

  d)js文件头,函数,算法等地方都必须加上注释。

  10.格式请严格按照限定的格式书写。

  a)禁止向标签添加language属性,必须加入type属性。

  b)外部调用的js,确保先加载jquery.js再加载基于jquery开发的脚本,否则报错。

  11.维护已有页面时候,必须修正旧有页面存在的不符合js规范的问题。

  12.js文件必须按照它针对的功能模块进行分目录归档案。

  js根目录位于:

\webroot\js:

  a)基于全站的js文件存放到js根目录下;

  b)

  其它的js文件按照对应的功能进行存放如:

  禁止按照项目名称或代号对js进行归档。

  篇三:

js开发规范

  js开发规范

  北京华胜天成科技股份有限公司

  20xx年6月

  目录

  一编码规范.....................................................................................................................................3

  1.1空格...............................................................................................................................31.2注释...............................................................................................................................41.3空行...............................................................................................................................4二命名规则.....................................................................................................................................6

  2.1约定.....................................................................................................................................62.2简单的应用程序命名规则.................................................................................................7三语句.............................................................................................................................................8

  3.1表达式.................................................................................................................................83.2效率....................................................................................................................................8四函数设计.....................................................................................................................................8

  4.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(initialization;︵condition;︵update)

  【规则3】带参函数的“(”和“)”前后应当加空格,

  如:

  样例:

alert(︵“roast”︵);

  【规则4】赋值操作符、比较操作符、算术操作符、逻辑操作符、位域操作符,

  如“=”、“+=”“>=”、“  【规则6】关键字后面跟“(”时应该用一个空格隔开,

  如:

  样例:

for︵(︵vari=0;︵i  【规则7】如果函数是匿名函数,则在function和“(”之间应有一个空格。

如果

  省略了空格,否则会让人感觉函数名叫作function,

  如:

  样例:

  div.onclick=function(e){return{method:

function︵(){returnthis.datum;},datum:

0};

  1.2注释

  【规则1】如果代码本来就是清楚的,则不必加注释。

否则多此一举,令人厌烦。

【规则2】边写代码边注释,修改代码同时修改相应的注释,以保证注释与代码

  的一致性。

不再有用的注释要删除。

  【规则3】注释应当准确、易懂,防止注释有二义性。

错误的注释不但无益反而

  有害。

  【规则4】尽量避免在注释中使用缩写,特别是不常用缩写。

  【规则5】当代码比较长,特别是有多重嵌套时,应当在一些段落的结束处加注

  释,便于阅读。

  1.3空行

  【规则1】在每个函数定义结束之后都要加空行,

  如:

  样例:

functiongood(){}…//空行/**….*/

  functiontest(){}

  【规则2】不同的功能实现间应当空行,便于代码的浏览,

  如:

  样例:

functionfunc(){

  //获取和设置相关的属性功能varid=$(id);id.style…id.value…..//此处应当空一行//其它小功能区}

  【规则3】在一个函数体内,逻辑上密切相关的语句之间不加空行,其它地方应

  加空行分隔,如:

  样例:

  functionfunc(){

  //以下三行为相同小功能,不应空行varid=$(id);id.style…id.value…..//此处应当空一行//其它小功能区}

  1.4缩进

  【规则1】函数程序体应缩进四个空格,tab键为4个空格,以tab键作为缩进单

  位,

  

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 计算机软件及应用

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1