なぜこのように機能しないのでしょうか?返された a は未定義です。論理的に言えば、コードは順番に実行されます。s に値が入るまで、Res.send は実行されません。
res.send(s) と res.send(s()) のどちらを使用するべきですか? 関数が変数に代入されている場合、その変数は宣言時に実行されますか?
res.send(s)
res.send(s())
次のコードが s を宣言すると s が実行されますか?
次のような書き方も可能です
utils.Test()
あなたが与えたコードに何か問題がありますか?しかし、それはおそらく結果がまだ返されていないためです。それをコールバック関数に入れて実行すると、この問題は発生しません。 utils.Test是一个异步执行的函数吧,所以你第一种写法在执行res.json(s)
utils.Test
res.json(s)
リーリー
このコードのどこで s が関数であると宣言されていますか? s は関数でなければならないと主張し、心から s を呼び出す自信を与えてくれるのは何でしょうか?
変数に関数を代入した場合、その変数は宣言時に実行されますか?
関数を変数に割り当てていません。関数を最初のパラメータとして utils.Test という関数に渡し、戻り値を変数に渡しています。
Sってどういう意味ですか?次に、utils.Test に尋ねる必要があります。utils.Test が何をするのか、また、あなたが渡した関数が utils.Test で何を経験したかを誰が知っているでしょう。
あなたが与えたコードに何か問題がありますか?しかし、それはおそらく結果がまだ返されていないためです。それをコールバック関数に入れて実行すると、この問題は発生しません。
utils.Test
是一个异步执行的函数吧,所以你第一种写法在执行res.json(s)
リーリー
このコードのどこで s が関数であると宣言されていますか? s は関数でなければならないと主張し、心から s を呼び出す自信を与えてくれるのは何でしょうか?
関数を変数に割り当てていません。関数を最初のパラメータとして utils.Test という関数に渡し、戻り値を変数に渡しています。
Sってどういう意味ですか?次に、utils.Test に尋ねる必要があります。utils.Test が何をするのか、また、あなたが渡した関数が utils.Test で何を経験したかを誰が知っているでしょう。