3

JavaScript では、関数式 ( などvar myFunc = function() {...}) を使用する場合、他の変数宣言と同様に、使用するに変数を定義する必要があります。たとえば、次の例は機能しません(結果は になりUncaught TypeError: myFunc is not a functionます)。

var myVar = myFunc();

var myFunc = function() {
    // code here...
}

ただし、ノードjsプロジェクトのroutes/index.jsファイルには、次のコードがあります(明らかに省略されています):

var router = express.Router();
.
.
.
router.post('/', function(req, res) {
    ...
    ...
    var myVar = myFunc(); // WORKS!
    ...
    ...
}

var myFunc = function() {
    ...
}

myFunc変数は使用後に宣言されるので、これはエラーをスローするべきではありませんか?

4

1 に答える 1