javascript - 使用 JavaScript 将 kebab-case 转换为 camelCase

标签 javascript arrays string camelcasing kebab-case

假设我有一个将 kebab-case 转换为 camelCase 的函数:

camelize("my-kebab-string") === 'myKebabString';

我快到了,但我的代码也输出大写的第一个字母:

function camelize(str){
  let arr = str.split('-');
  let capital = arr.map(item=> item.charAt(0).toUpperCase() + item.slice(1).toLowerCase());
  let capitalString = capital.join("");

  console.log(capitalString);
}
    
camelize("my-kebab-string");

最佳答案

您也可以尝试正则表达式。

camelize = s => s.replace(/-./g, x=>x[1].toUpperCase())

const camelize = s => s.replace(/-./g, x=>x[1].toUpperCase())
const words = ["stack-overflow","camel-case","alllowercase","allcapitalletters","custom-xml-parser","api-finder","json-response-data","person20-address","user-api20-endpoint"];
console.log(words.map(camelize));

仅查找后跟任何字符的连字符,并将其大写并用大写字符替换连字符+字符。

关于javascript - 使用 JavaScript 将 kebab-case 转换为 camelCase,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57556471/

相关文章:

javascript - JQuery Datepicker 需要触发 onclick

python - 字符串格式化,科学记数法在 Python 中 float

javascript - 删除 jQuery 中的动态表行不起作用

javascript - Browserify 获取外部 JSON 数据

javascript - JQuery 将字符串识别为函数动态回调

php - 在 PHP 中如何确定数组是否为空?

Java : my program "sometimes" wont store the smallest element per row of a 2d array

Java:HashMap.get 返回 null

c# - 如何使用递归创建随机字符串列表?

java - 如何反转放置 2/3 堆的字符串?