name-case-transform
v1.0.6
Published
name case transform tool
Downloads
17
Maintainers
Readme
风格转换工具
name case transform tool
文档:中文 | English
支持 Pascal、小驼峰、连字符、下划线命名风格互转。
支持字符串和 JSON(key)。
API
caseTransform((dataSource: [String | Object]), (targetCase: String), [(sourceCase: String)]);
dataSource: 想要转换的数据。
targetCase: 目标命名风格。
-
: 连字符命名风格,比如:my-name
._
: 下划线命名风格, 比如:my_name
.A
: Pascal 命名风格, eg:MyName
.a
: 小驼峰命名风格, eg:myName
.
数据源命名风格: 非必须。(程序会自动推断源数据风格,但是判断可能不及预期(多种风格混合)。这个时候,可以指定数据源命名风格。)
-
: 连字符命名风格,比如:my-name
._
: 下划线命名风格, 比如:my_name
.A
: Pascal 命名风格, eg:MyName
.a
: 小驼峰命名风格, eg:myName
.
用法
引入
import caseTransform from "name-case-transform";
转换
字符串:
let res = caseTransform("my_name", "A"); // MyName;
// 指定源数据命名风格
let res = caseTransform("my_name", "A", "_"); // MyName;
JSON:
let data = {
res_code: 4000,
res_list: [
{
my_name: "admin1",
password: "12323",
},
{
my_name: "admin2",
password: "123123",
},
],
};
let res = caseTransform(data, "a");
// 指定源数据命名风格
let res = caseTransform(data, "a", "_");
结果:
{
resCode:4000,
resList:[
{
myName:"admin1",
password:"12323"
},
{
myName:"admin2",
password:"123123"
}
]
}
Q-A
- 如果几种风格混合在一起,如何自动推断类型?(按照下面先后顺序采用)
- 字符串或者 JSON(key)值,包含
_
, 推断为下划线风格("_")。 - 字符串或者 JSON(key)值,包含
-
, 推断为连字符风格("-")。 - 字符串或者 JSON(key)值,第一个字母为大写,推断为 Pascal 风格。
- 其他情况,推断为小驼峰风格。
其他
兼容性问题
因为程序中多是使用正则,所以在不支持正则的环境将会报错!!!