メニュー
検索
言語
タグ
文字列をキャメルケースの文字列に変換する関数 (toCamelCase)
総合評価: - 作成日: 2025-10-06
コメント:
Braveブラウザで動作確認済み。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>toCamelCase</title>
<script>
/**
* 文字列sをキャメルケースに変換する。
*/
function toCamelCase (s) {
let dst = ''
let m = 0
for (let i = 0; i < s.length; i++) {
let c = s[i]
switch (m) {
case 0:
if (/[a-zA-Z0-9]/.test(c)) {
dst += c.toLowerCase()
m = 10
}
break
case 10:
if (/[a-zA-Z0-9]/.test(c)) {
dst += c
} else {
m = 20
}
break
case 20:
if (/[a-zA-Z0-9]/.test(c)) {
dst += c.toUpperCase()
m = 10
} else {
// pass
}
break
}
}
return dst
}
document.addEventListener('DOMContentLoaded', () => {
console.assert(toCamelCase(' camel case string ?') === 'camelCaseString')
console.assert(toCamelCase('camelCaseString0123') === 'camelCaseString0123')
console.assert(toCamelCase('snake0123_case_string') === 'snake0123CaseString')
console.assert(toCamelCase('PascalCaseString') === 'pascalCaseString')
console.assert(toCamelCase('kebab-case-string') === 'kebabCaseString')
console.log('OK')
})
</script>
</head>
<body>
</body>
</html>