1、通用的一些命名约定
- 变量
使用驼峰式(Camel)命名法
var nameToModules = {};
- 私有属性、变量和方法
以下划线_开头
var _privateMethod = {};
- 常量
使用全部字母大写,单词直接按采用下划线分割的命名方式。
var HTML_MODULES = "This is html modules"
- 函数
函数名(参数),使用驼峰式(Camel)命名;
function check(wordLength){};
function checkStringLength(stringSource){};
- 类
类名,使用帕斯卡(Pascal)命名法
类的方法/属性,使用驼峰式(Camel)命名
注:Pascal的首字母大写,Camel是首字母小写。
class TelephoneNumber{
constructor(colorStyle,size){
this.colorStyle = colorStyle;
this.size = size;
};
show(){
alert(`我需要的是${this.colorStyle}风格的设计,并且它的尺寸是${this.size}`)
}
}
//上述采用ES6的语法//
- 枚举
枚举变量,使用帕斯卡(Pascal)命名法
枚举的属性,使用全部字母大写,单词间下划线分隔的命名方式。
var LoadingState = {
START: 1,
LOADING: 2,
RECEVIED: 3,
RESPONSE: 4
};
2、命名语法
- 函数名
使用动宾短语。
function getColorStyle(element){};
- 类名
使用名词。
class Engineer(options){}
- Boolean值类型的变量
使用is或has开头。
var isAnimal = true;
var hasMorePeople = false;
- Promise对象
使用动宾短语的进行时命名
var loadingData = ajax.get('baseUrl');
loadingData.then(callback);
3、其它
除上述的主观规范以外,再JS中命名还有一些强制的规范:
- 只能由数字、字母、下划线以及美元符号$组成;
- 不能以数字开头;
- 不能是JS中的保留字和关键字;
- 严格区分大小写;