letの仕様に関する知識を問うJavaScriptの問題

nove-b June 21, 2023
Source
先日、とあるSNSを見ていたら、JavaScriptの問題が出されていた。 さて、ここで問題 このコードを実行した結果、どのような結果が求められるでしょう。 予想 面白そうなので実行する前に推測してみる。 まず、If文がtrueなので当然のようにIfの中身が実行される。 ここでLetの仕様の話になるのだが、Letは関数内でスコープされるので、先頭で定義されたLetとIf文の中のLetは違うものだということになる。 結果、If文の中のaは20となり、outsideのaはどこからも影響を受けずに10のままになる。 つまり2が正解になると予想される。 結果 正しいと証明された。 たぶん予想の仮説も正しいが、念のためChat Gptに聞いてみる。 うん、同じことを言っているので一安心した。 Var or Const Var ちなみにVarで定義すると、aが毎回上書きされるので、 になる。 Const ConstもLetと同様の結果になる。

Discussion in the ATmosphere

Loading comments...