js命名规则

JavaScript08

js命名规则,第1张

函数命名:统一使用动词或者动词+名词形式 ---- fnInit() 如果有内部函数则“_”开头  _fnInit(). 对象方法命名使用fn+对象类名+动词+名词形式  fnAnimateDoRun() 某事件响应函数命名方式为fn+触发事件对象名+事件名或者模块名  fnDivClick() 附常用的动词列表:变量命名: 一些算是默认的规范就不说了 (常量大写,循环变量简写,驼峰式等) 对于变量命名 还是没有一个规范,下面贴出一个别人的规范仅供参考。 按照类型规划: 按照前缀区分 :市面上常用的命名规范: camelCase(小驼峰式命名法 —— 首字母小写) PascalCase(大驼峰式命名法 —— 首字母大写) kebab-case(短横线连接式) Snake(下划线连接式) 1.1 项目文件命名 1.1.1 项目名 全部采用小写方式, 以 短横线 分隔。例:my-project-name。 1.1.2 目录名参照项目命名规则,有复数结构时,要采用复数命名法 。例:docs、assets、components、directives、mixins、utils、views。

JavaScript 源文件命名没有什么硬性规定或推荐标准,完全可以凭个人喜好命名,只要符合 URI/URL 命名规则即可,习惯使用短线(-)或句点(.)作为分隔符号,最好使用小写英文字符,不要使用其他符号和扩展字符(如中文字符)。也有一些命名惯例:

一般使用 .js 扩展名,这个扩展名的兼容性最好。其实任何扩展名都可以,只要是 text 类型、编码正确即可,但引用时须注明类型(type="text/javascript" 或 "application/javascript")及编码字符集(charset="UTF-8" 等等)。

一般使用短线替代自然语言名称中的空格,比如 jQuery UI 1.9.0 的源文件可命名为“jquery-ui-1.9.0.js”。

一般用句点分隔表示名称中的从属关系,范围大的在前面。比如你提到的 MooFx2 的(主模块)源文件就可命名为“moo.fx.js”,MooFx2 的可选特效包,属于 MooFx2 的子模块,可命名为“moo.fx.pack.js”;还有,比如 jQuery 的表单插件 Form,属于 jQuery 扩展插件,则可命名为“jquery.form.js”。

经过压缩的源文件可以使用“min”表示,区别于原始版本。比如经过压缩的 jQuery 源文件可以命名为“jquery.min.js”,YUI 则习惯命名为"yui-min.js"。

上面的惯例仅供参考,最终还是尊重个人习惯。不过如果你在项目中引用了某个框架或库,就最好优先使用他们的命名习惯。另外,一个项目中最好统一使用一种命名规则,这样方便自己和其他开发人员识别。

javascript命名规范没有明确的定义吧,主要怎么命名让自己看起来爽,团队看起来爽,所以主要还是看你们自己怎么约定的。

命名规范

1.变量名称 必须为 小写字母。

2.类的命名使用骆驼命名规则,例如:

Account, EventHandler

3.常量 必须 在对象(类)或者枚举变量的前部声明。枚举变量的命名必须要有实际的意义,并且其成员 必须 使用骆驼命名规则或使用大写:

var NodeTypes ={Element :1,DOCUMENT:2}

4.简写单词 不能使用 大写名称作为变量名:

getInnerHtml(), getXml(), XmlDocument

5.方法的命令 必须 为动词或者是动词短语:

obj.getSomeValue()

6.公有类的命名 必须 使用混合名称(mixedCase)命名。

7.CSS 变量的命名 必须 使用其对应的相同的公共类变量。

8.私有类的变量属性成员 必须 使用混合名称(mixedCase)命名,并前面下下划线(_)。例如:

var MyClass =function(){ var _buffer this.doSomething=function(){ }

}

9.变量如果设置为私有,则前面 必须 添加下划线。

this._somePrivateVariable = statement

10.通用的变量 必须 使用与其名字一致的类型名称:

setTopic(topic)// 变量 topic 为 Topic 类型的变量

11.所有的变量名 必须 使用英文名称。

12.变量如有较广的作用域(large scope),必须使用全局变量;此时可以设计成一个类的成员。相对的如作用域较小或为私有变量则使用简洁的单词命名。

13.如果变量有其隐含的返回值,则避免使用其相似的方法:

getHandler()// 避免使用 getEventHandler()

14.公有变量必须清楚的表达其自身的属性,避免字义含糊不清,例如:

MouseEventHandler

,而非 MseEvtHdlr。请再次注意这条规定,这样做得的好处是非常明显的。它能明确的表达表达式所定义的含义。

15.类/构造函数 可以使用 扩展其基类的名称命名,这样可以正确、迅速的找到其基类的名称: EventHandler UIEventHandler MouseEventHandler基类可以在明确描述其属性的前提下,缩减其命名:MouseEventHandler as opposed to MouseUIEventHandler.

特殊命名规范

术语 “get/set” 不要和一个字段相连,除非它被定义为私有变量。前面加 “is” 的变量名 应该 为布尔值,同理可以为 “has”, “can” 或者 “should”。

术语 “compute” 作为变量名应为已经计算完成的变量。

术语 “find” 作为变量名应为已经查找完成的变量。

术语 “initialize” 或者 “init” 作为变量名应为已经实例化(初始化)完成的类或者其他类型的变量。UI (用户界面)控制变量应在名称后加控制类型,例如: leftComboBox, TopScrollPane。复数必须有其公共的名称约定(原文:Plural form MUST be used to name collections)。带有 “num” 或者 “count” 开头的变量名约定为数字(对象)。重复变量建议使用 “i”, “j”, “k” (依次类推)等名称的变量。补充用语必须使用补充词,例如: get/set, add/remove, create/destroy, start/stop, insert/delete, begin/end, etc.能缩写的名称尽量使用缩写。避免产生歧义的布尔变量名称,例如:isNotError, isNotFound 为非法错误类建议在变量名称后加上 “Exception” 或者 “Error”。方法如果返回一个类,则应该在名称上说明返回什么;如果是一个过程,则应该说明做了什么。