javascript变量名和函数对象的命名规范是什么?

JavaScript024

javascript变量名和函数对象的命名规范是什么?,第1张

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”。方法如果返回一个类,则应该在名称上说明返回什么;如果是一个过程,则应该说明做了什么。

通过eval的方式作为对象名称或者属性。

示例

var obj = {a:1}//定义一个对象obj,里面有一个属性a

var k = 'a' //定一个变量k,k的值是字符a

var r = eval("obj."+k) //通过eval获取对象obj属性a的值。

补充:

eval要计算的字符串,把字符串表示的 JavaScript 表达式变成可执行的语句

用v-on指令或者@监听DOM事件,并在触发时运行一些JavaScript代码;

参考:JS,Vue2,介绍,与Vue3区别,MVVM设计模式,模板语法,数据绑定

Vue中的事件修饰符:

1、prevent:阻止默认事件(常用);

2、stop:阻止事件冒泡(常用);

3、once:事件只触发一次(常用);

4、capture:使用事件的捕获模式;

5、self:只有event.target是当前操作的元素时才触发事件;

6、passive:事件的默认行为立即执行,无需等待事件回调执行完毕;

Vue中常用的按键别名:

回车 =>enter、删除 =>delete (捕获“删除”和“退格”键)、退出 =>esc、空格 =>space、换行 =>tab (特殊,必须配合keydown去使用)、上 =>up、下 =>down、左 =>left、右 =>right等。

代码案例

模板内的表达式是非常便利的,用于简单的运算。当其过长或逻辑过于复杂时,会难以维护,因此,当遇到复杂的逻辑时应该使用计算属性,用computed计算属性。

代码案例

通过watch来响应数据的变化。

代码案例

class样式,写法:class="xxx" ,其中xxx可以是字符串、对象、数组。

1、字符串写法适用于:类名不确定,要动态获取。

2、对象写法适用于:要绑定多个样式,个数不确定,名字也不确定。

3、数组写法适用于:要绑定多个样式,个数确定,名字也确定,但不确定用不用。

style样式,写法::style="{fontSize: xxx}",其中xxx是动态值;:style="[a,b]"其中a、b是样式对象。

代码案例