この解答例はChatGPTによって生成されています,正しいかは自己判断で。

BFE.devでのAI解答例 - JavaScript クイズ
28. Hoisting II

以下が出力されます:

1
2
TypeError: func3 is not a function

JavaScriptでは、関数の定義方法によってスコープと実行タイミングが異なります。上記のコードでは、func1func2はどちらも関数の宣言であり、func3は変数の宣言と関数式(名前付き関数式)の組み合わせです。

最初の関数func1は即座に呼び出されて1を出力します。次の関数func2は宣言時に関数が初期化され、その後に呼び出されて2を出力します。

しかし、func3は変数として宣言された後に関数式で初期化されたので、関数がまだ割り当てられていない状態でfunc3()が呼び出されています。そのため、"TypeError: func3 is not a function"というエラーが発生します。