在最近工作中有遇到将连接符连接的英文字符串转换成驼峰命名的需求
例如将register-box-body –> registerBoxBody 总结以下三种方法,最终使用方法三,因为简洁 哈哈
方法一:操作字符串数组
function camelCase(str){
var strArr=str.split('-');
for(var i=1;i<strArr.length;i++){
strArr[i]=strArr[i].charAt(0).toUpperCase()+strArr[i].substring(1);
}
return strArr.join('');
}
方法二:操作字符数组
function tranformStr2(str){
var strArr=str.split('');
for(var i=1;i<strArr.length;i++){
if(strArr[i]=='-'){
//删除'-'
strArr.splice(i,1);
//转大写
if(i<strArr.length){
strArr[i]=strArr[i].toUpperCase();
}
}
}
return strArr.join('');
}
方法三:利用正则表达式
function transformStr3(str){
var re=/-(\w)/g;
return str.replace(re,function ($0,$1){
return $1.toUpperCase();
});
}