js实现驼峰
驼峰命名法简介
驼峰命名法分为大驼峰(PascalCase)和小驼峰(camelCase)。大驼峰每个单词首字母大写,小驼峰首个单词首字母小写,后续单词首字母大写。
字符串转小驼峰
将下划线或连字符连接的字符串转为小驼峰格式:
function toCamelCase(str) {
return str.replace(/[-_](.)/g, (_, char) => char.toUpperCase());
}
// 示例
toCamelCase('hello-world'); // 'helloWorld'
toCamelCase('hello_world'); // 'helloWorld'
字符串转大驼峰
将下划线或连字符连接的字符串转为大驼峰格式:
function toPascalCase(str) {
return str.replace(/[-_](.)|(^\w)/g, (match, p1, p2) =>
(p1 ? p1.toUpperCase() : p2.toUpperCase())
);
}
// 示例
toPascalCase('hello-world'); // 'HelloWorld'
toPascalCase('hello_world'); // 'HelloWorld'
驼峰转其他格式
将驼峰字符串转为下划线或连字符格式:
function camelToSnake(str) {
return str.replace(/[A-Z]/g, letter => `_${letter.toLowerCase()}`);
}
function camelToKebab(str) {
return str.replace(/[A-Z]/g, letter => `-${letter.toLowerCase()}`);
}
// 示例
camelToSnake('helloWorld'); // 'hello_world'
camelToKebab('helloWorld'); // 'hello-world'
处理边界情况
空字符串或非字符串输入时返回原值:
function safeToCamelCase(str) {
if (typeof str !== 'string') return str;
return str.replace(/[-_](.)/g, (_, char) => char.toUpperCase());
}
这些方法覆盖了常见的驼峰命名转换需求,可根据实际场景调整正则表达式处理更复杂的格式。







