ホームページ > ウェブフロントエンド > jsチュートリアル > Node.js の forEach() は同期ですか、それとも非同期ですか?_node.js

Node.js の forEach() は同期ですか、それとも非同期ですか?_node.js

WBOY
リリース: 2016-05-16 16:17:21
オリジナル
2057 人が閲覧しました

コールバック関数を使用するノード内のほぼすべての場所は、コールバック関数内のコードよりも前に実行される可能性が高く、特にデータベース操作がそうです。もちろん、node はファイル操作などの関数の同期バージョンも提供します。fs.readFileSync() は fs.readFile() の同期バージョンです。

そこで問題は、forEach() は非同期なのかということです。論理的に言えば、Sync が追加されていない場合は、非同期になるはずです。

コードをコピーします コードは次のとおりです:

var arr = ['a', 'b', 'c'];
var str = '123';
arr.forEach(関数(項目) {
str = アイテム;
While (true) {} // 無限ループを使用して妨害します~~
});
console.log(str);

上記のコードを実行すると、何も出力されずに停止します。 。

つまり、ノードの forEach() は同期です。 !

初めてノードを使用したときは、この問題について何も考えずに、テスト後に思いつきました。前のコードは間違って書かれていました。

場合によっては forEach を非同期に処理する必要がある場合は、Google で検索するとノード配列があるので、試してみてください~~ ポータル: https://github.com/cfsghost /ノード配列

この作品は http://www.cnblogs.com/ImYZF によって作成されました

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート