JavaScript には文字列の最初の文字を大文字にする関数はありません。
PHPでいうと ucfirst 関数と同じことができる3つの方法を書いた。
var text = 'hello.';
var text2 = text.charAt(0).toUpperCase() + text.slice(1);
var text2 = text.substring(0, 1).toUpperCase() + text.substring(1);
var text2 = text.replace(/^[a-z]/g, function (val) {
return val.toUpperCase();
});
// Output: Hello.
文字列の置き換え(replace)が遅いという先入観があって、1つ目の方法の charAt と slice を使うようにしてる。
ちなみに頭文字以外を小文字にしたい場合はこんな感じになる
var text = 'hEllo All.';
var text2 = text.charAt(0).toUpperCase() + text.slice(1).toLowerCase();
var text2 = text.substring(0, 1).toUpperCase() + text.substring(1).toLowerCase();
var text2 = text.toLowerCase().replace(/^[a-z]/g, function (val) {
return val.toUpperCase();
});
var text2 = text.replace(/(^[a-z])(.*)/g, function (text, val1, val2) {
return val1.toUpperCase() + val2.toLowerCase();
});
// Output: Hello all.