同期処理と非同期処理が混在している場合、予期しない動作として関数が通らなかったりする。
ポイントを抑えて、同期と非同期を使い分けなきゃいけませんね。
同期処理
fs.readFileSync()
同期処理はSync
がついているようです。この処理が終わらないと次の処理に移らないようになります。例えば、非同期でwriteFile()
とかしていて、すぐ次にreadFileSync()
とかしていると「予期せぬエラーがおきました」的なエラーがでたりしました。考えてみれば当たり前ですが、午前3時くらいに遭遇するとハマりますね。
非同期処理
fs.readFile()
逆に並行してどんどん処理を進めてよって時は非同期にしたほうがよいですね。ファイルの書き出しだけとかならできたところから出力してくれればいいので、非同期で進めてもらっちゃってかまわないということですね。
便利ですね。
Node.jsはやっぱり便利だなー。技術的革新て感じがする。これによって、かなりWebまわりとか可能性広がったと思う。まぁまぁ取り上げられているとはいえ、もっとインパクトのある技術革新だなーと改めて思う。
Electronでもっと気軽にアプリつくったら結構業務が便利になりそう。請求書発行したりとか。
JSON使ってローカルで完結すると別に変換するのも楽だし。