gpt4 book ai didi

javascript - camelCase 到 kebab-case

转载 作者:行者123 更新时间:2023-12-03 07:04:11 31 4
gpt4 key购买 nike

我有一个 kebabize 函数,可以将 camelCase 转换为 kebab-case。我正在分享我的代码。可以更优化吗?我知道这个问题可以使用正则表达式来解决。但是,我想在不使用正则表达式的情况下做到这一点。

const kebabize = str => {

let subs = []
let char = ''
let j = 0

for( let i = 0; i < str.length; i++ ) {

char = str[i]

if(str[i] === char.toUpperCase()) {
subs.push(str.slice(j, i))
j = i
}

if(i == str.length - 1) {
subs.push(str.slice(j, str.length))
}
}

return subs.map(el => (el.charAt(0).toLowerCase() + el.substr(1, el.length))).join('-')
}

kebabize('myNameIsStack')

最佳答案

const kebabize = str => {
return str.split('').map((letter, idx) => {
return letter.toUpperCase() === letter
? `${idx !== 0 ? '-' : ''}${letter.toLowerCase()}`
: letter;
}).join('');
}

console.log(kebabize('myNameIsStack'));
console.log(kebabize('MyNameIsStack'));

您可以检查每个字母是否为大写并替换它。

关于javascript - camelCase 到 kebab-case,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63116039/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com