js中将小/大驼峰格式的字符串转为下划线相连的字符串
function isUpperCase(ch)
{
return /^[A-Z]$/.test(ch)
}
function isLowerCase(ch)
{
return /^[a-z]$/.test(ch)
}
function convert(str)
{
let arr = [];
for(i = 0; i < str.length; i++)
{
const preSmall = i > 0 ? isLowerCase(str[i-1]) : false; // 前方是否为小写
let ch = str[i];
if(isUpperCase(ch))
{
ch = ch.toLowerCase();
if(preSmall)
{
ch = '_' + ch;
}
}
arr.push(ch);
// console.log(str[i]);
}
console.log(arr.join(''));
return arr.join('');
}
convert('Budget_BalanceSheet');
最终输出结果为:budget_balance_sheet
浙公网安备 33010602011771号