[解決済み] nodeJs コールバックの簡単な例
2022-06-19 03:42:19
質問
nodeJsのコールバックの簡単な例を教えてください。すでに多くのウェブサイトで同じことを検索しましたが、正しく理解することができませんでした。
getDbFiles(store, function(files){
getCdnFiles(store, function(files){
})
})
こんなことしたいんだけど...。
どのように解決するのですか?
var myCallback = function(data) {
console.log('got data: '+data);
};
var usingItNow = function(callback) {
callback('get it?');
};
次に、ノードまたはブラウザのコンソールを開き、上記の定義を貼り付けます。
最後にこの次の行で使用します。
usingItNow(myCallback);
Node-Styleのエラー規則について
Costa は、もし私たちがノードエラーコールバックの規約を尊重するならば、これがどのように見えるかを尋ねました。
この規約では、コールバックは少なくとも 1 つの引数、最初の引数をエラーとして受け取ることを期待する必要があります。オプションとして、コンテキストに応じて 1 つ以上の追加の引数を持つことになります。この場合、コンテキストは上記の例です。
ここでは、私たちの例をこの規約で書き換えています。
var myCallback = function(err, data) {
if (err) throw err; // Check for the error and throw if it exists.
console.log('got data: '+data); // Otherwise proceed as usual.
};
var usingItNow = function(callback) {
callback(null, 'get it?'); // I dont want to throw an error, so I pass null for the error argument
};
エラーケースをシミュレートしたい場合は、次のようにusingItNowを定義します。
var usingItNow = function(callback) {
var myError = new Error('My custom error!');
callback(myError, 'get it?'); // I send my error as the first argument.
};
最終的な使い方は上記と全く同じです。
usingItNow(myCallback);
動作の違いは、どのバージョンの
usingItNow
は、最初の引数のコールバックに "truthy value" (Error オブジェクト) をフィードするもの、またはエラー引数のためにそれをヌルフィードフィードするものです。
関連
-
Vueの一般的な組み込みディレクティブの説明
-
[解決済み] event.preventDefault() vs. return false
-
[解決済み] ループ内のJavaScriptクロージャ - シンプルな実用例
-
[解決済み] forEachループでasync/awaitを使用する
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
-
[解決済み] コールバック内で正しい `this` にアクセスする方法
-
[解決済み] Node.jsのnpmモジュールをアンインストールするにはどうすればよいですか?
-
[解決済み] どうすればjQueryに非同期ではなく、同期のAjaxリクエストを実行させることができますか?
-
[解決済み] jQuery get specific option tag text
-
[解決済み] Reduxの非同期フローになぜミドルウェアが必要なのか?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
vueが定義するプライベートフィルタと基本的な使い方
-
Vueでルートネスティングを実装する例
-
Vueの「データを聴く」原則を解説
-
[解決済み】GETできない / Nodejsエラー
-
[解決済み] Web API エラー - このリクエストはブロックされました; コンテンツは HTTPS で提供されなければなりません
-
[解決済み】JavaScriptエラー(Uncaught SyntaxError: Unexpected end of input)
-
[解決済み】JavaScriptでインラインIF文の書き方は?
-
[解決済み】(Google Map API) Geocodeは以下の理由で成功しませんでした。REQUEST_DENIED
-
nodejs unhandledPromiseRejectionWarning メッセージ
-
[解決済み] javascript node.js next()