1. ホーム
  2. javascript

[解決済み] ES6モジュールのインポートは、インポートされたファイル内のコードを実行しますか?

2023-01-04 19:56:40

質問

jsファイル内のコードはインポート時に実行されますか? もしそうなら、1回ですか、それとも毎回ですか? 例

// a.js
console.log("A");
const a = "a"; 
export default a;

// b.js
import a from "./a"; // => console logs?

// c.js
import a from "./a"; // => console logs again?

どのように解決するのですか?

はい、1回だけです。

参照 http://www.ecma-international.org/ecma-262/6.0/#sec-abstract-module-records :

このモジュールがすでに評価されている場合は何もしない。そうでなければ、このモジュールのすべてのモジュール依存性を推移的に評価し、その後、このモジュールを評価します。