質問: "\n";」としてみましたが、そうするとコンソールには何も表示されなくなります。 ・3行目で作った変数strに足すことで、文字列を具現化できる(???)。 正直さっぱりです。 当方まだJSを勉強し始めて日が浅いため、基本的な理解が足りない部分があると思います。 うまく伝えられているか不安ですが、もしよろしければどなたか回答をしていただけると非常に助かります。 ### 補足情報(FW/ツールのバージョンなど) ここにより詳細な情報を記載してください。
回答: 3行目の理解はだいたい合っています。正確には空白ではなく、長さ0の文字列で初期化しています。表示に必要な文字は後続の処理で追加していくので、最初は何もなしで構わないわけです。 6行目と8行目は、表示に必要な文字(「*」や「\n」)をstrに追加しています。追加せずに単純に代入してしまうと、その文字だけが「console.log(str);」で表示されることになってしまいます。何も表示されなくなったのは、「console.log('\n');」が最終的に実行されたためです。strの内容が、目に見えない改行文字になってしまったからです。 追加と代入の違いは、下記のコードを動かして見てみるとわかりやすいと思います。 ``` let str = ''; str = str + '*'; str = str + '\n'; str = str + '*'; str = str + '*'; console.log(str); ``` ``` let str = ''; str = '*'; str = '\n'; str = '*'; str = '*'; console.log(str); ```