私はEthan Brownの「Learning JavaScript」ブックでJavaScriptを学習していますが、期待されていると私はエラーが何であるか把握していないようです。私はそれが何かを明らかにしていると確信しています、私は2日目にこのことを学んでいますが、これはイライラしています!名前を正しく戻さないJavaScript関数(JavaScriptの学習 - O'Reillyの例)
このセクションのコードは、this
キーワードを使用することに焦点を当てています。この例では、ネストされた機能でthis
を使用する正しい方法を示しています。この本はES6に焦点を当てて
NOTE、ないES5
const o = {
name: "Daniel",
greetBackwards: function() {
const self = this;
function getReversedName() {
let nameBackwards = "";
for (let i = self.length - 1; i >= 0; i--) {
nameBackwards += self.name[i];
}
return nameBackwards;
}
return `${getReversedName()} si eman ym , olleH`;
},
};
:ここ
コード(!ブックから取られたが、私は代わりに "ジュリー" の私の名前を使用)であります
期待される出力:
o.greetBackwards();
"leinaDのSi EMANのYM、olleH"
実際の出力:
o.greetBackwards()。
"のSi EMANのYM、olleH"
サイドノート:あなたはと全体
getReversedName
機能を実装することができますJavaScriptの文字列は不変ですので、それが全体の文字列ごとにループを再割り当てとしての機能を反転した文字列は、次善です。 '.split( '')。reverse()。join( '')'を使う方が良いでしょう。 –"期待" ---あなたの期待は何に基づいていますか? – zerkms
@ AlexanderO'Maraあなたの提案はコードよりも優れていますか? – zerkms