これは私が初めてここに投稿したものです。for/inループ内のカウンタ変数
私は任意の文字列の各単語の最初の文字を大文字にしようとしています。私は文字列を別々の文字に分割し、for/inループを使って各文字を調べました。
は、ここで私がこれまで持っているものだ:私はエラーを得続ける
function LetterCapitalize(str) {
var split = str.split('');
for (var i in split) {
if (i === 0) {
split[i] = split[i].toUpperCase();
} else if (split[i] === " ") {
split[i+1] = split[i+1].toUpperCase();
}
}
str = split.join('');
return str;
}
console.log(LetterCapitalize('hello world'));
「キャッチされない例外TypeError:プロパティを読み取ることができません。 『私が間違っているのは何
』未定義の」のtoUpperCase。私がやろうとしていることをするためのより良い方法は何ですか?
別のオプション、あなたは 'テキスト変換して、代わりにCSSを使用することができます生かす;' :) – Delosdos
http://stackoverflow.com([のために...アレイとin' '使用しないでください]/questions/500504/why-is-for-with-with-array-iteration-a-bad-idea)を使用します。 'i'は文字列なので、インデックス5では' "5" +1 === "51" 'となります。 – JJJ
母、はい!これは、私が言語を学ぶのを助けるためのjavascript思考運動の多くとして意味された、CSSはだますだろう:) – anytimesoon