[解決済み] Q.nfcallとQ.fcallの違いは何ですか?
2022-02-13 06:18:47
質問
私はnode.jsの初心者です。私はQ.nfcallを理解しようとしています。 私は以下のNode.jsのコードを持っています。
function mytest() {
console.log('In mytest');
return 'aaa';
}
Q.nfcall(mytest)
.then(
function(value){
console.log(value);
});
私が期待する出力は、次のようになるはずです。
In mytest
aaa
しかし、実際に出力されるのは
In mytest
上のコードでQ.nfcallをQ.fcallに変更したら、期待通りの出力になりました。
In mytest
aaa
なぜでしょう?Q.nfcallとQ.fcallは何が違うのでしょうか?ありがとうございます。
どのように解決するのですか?
からの Q のドキュメントを参照してください。
Node.jsのコールバックを利用した関数を扱う場合 パターン、つまりコールバックが function(err, result) の形式である場合、 Q は、これらの間で変換を行うための便利なユーティリティ関数をいくつか提供しています。 最もわかりやすいのは、おそらくQ.nfcallとQ.nfapplyでしょう。
その意味するところは
nfcall()
はNodeスタイルを期待します。
function(cb)
を呼び出すと
cb(error, result)
.
と書くと
Q.nfcall(mytest)
.then(
function(value){
console.log(value);
});
Q
が期待される。
mytest
で渡されたコールバックを呼び出します。
(error, value)
と
Q
を呼び出すと
next
コールバックは
value
.
ですから、あなたのコードは次のようになるはずです(以下はその例です)。
プランクル
):
function mytest(cb) {
console.log('In mytest');
cb(null, 'aaa');
}
Q.nfcall(mytest)
.then(
function(value){
console.log('value', value);
});
を調べることができます。 nfcall() のテストケース を使えば、もっと深く理解できるはずです。
関連
-
[解決済み】event.stopPropagationとevent.preventDefaultの違いは何ですか?
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] let "と "var "の使い分けは?
-
[解決済み] package.jsonのチルダ(~)とキャレット(^)の違いは何ですか?
-
[解決済み] callとapplyの違いは何ですか?
-
[解決済み] npm package.jsonファイルのdependencies, devDependencies, peerDependenciesの違いは何ですか?
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
-
[解決済み] Bowerとnpmの違いは何ですか?
-
[解決済み] React JSX内のループ
-
[解決済み] JavaScriptの正規表現でマッチしたグループにアクセスするにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Heroku:ノードアプリで「このアプリにはデフォルトの言語が検出されませんでした」エラーがスローされる
-
[解決済み】Facebook Graph API のクエリで with=location を使用すると "Uncaught (in promise) undefined" というエラーが発生する。
-
[解決済み】このエラーの原因は何ですか - "Fatal error: ローカルgruntを見つけることができません"
-
[解決済み】React Js: Uncaught (in promise) SyntaxError: 位置 0 の JSON で予期しないトークン < が発生しました。
-
[解決済み】NodeJS "ESモジュールをロードするためにインポートを使用する必要があります。"
-
[解決済み】SyntaxError: 'import' と 'export' は 'sourceType: module' とだけ表示されるかもしれない - Gulp
-
[解決済み] テスト
-
[解決済み】JavaScriptのボタンonclickが機能しない
-
[解決済み] [Solved] Uncaught Invariant Violation: 前のレンダリング中よりも多くのフックをレンダリングする
-
[解決済み] Uncaught (in promise) TypeError: フェッチに失敗してCorsエラー