js驼峰式和下横线互转

什么是驼峰命名法

  1. 小驼峰命名法:除第一个单词之外,其他单词首字母大写,如bizType。常用于变量名,函数名。

  2. 大驼峰命名法:单词首字母都大写,如BizType。常用于类名,属性,命名空间等。

什么是下划线命名法

  下划线命名法:名称中的每一个逻辑断点都用一个下划线来标记,如biz_type

驼峰式转下横线

1
2
3
4
5
6
7
8
9
10
11
function toLowerLine(field) {
var result = field.replace(/[A-Z]/g, function (match) {
return "_" + match.toLowerCase();
});
if (result.slice(0, 1) === "_") {
//如果首字母是大写,执行replace时会多一个_,这里需要去掉
result = result.slice(1);
}
return result;
}
console.log(toLowerLine("BizType")); // 输出biz_type

下横线转小驼峰式

1
2
3
4
5
6
function toSmallCamel(field) {
return field.replace(/([^_])(?:_+([^_]))/g, function ($0, $1, $2) {
return $1 + $2.toUpperCase();
});
}
console.log(toSmallCamel("biz_type")); // 输出bizType

下横线转大驼峰式

1
2
3
4
5
6
7
function toBigCamel(field) {
var result = field.replace(/([^_])(?:_+([^_]))/g, function ($0, $1, $2) {
return $1 + $2.toUpperCase();
});
return result.replace(result[0], result[0].toUpperCase());
}
console.log(toBigCamel("biz_type")); // 输出BizType