こんにちは。
JavaScript では変数・クラスの初期化前の参照は許されません。
下記を実行させると、エラーとみなされます(Cannot access ... before initialization
)。ただし bun run ./color.js
ではエラーは生じません。
なお、function
文は後置記述が許されます。
color.js
const color = generate_color();
console.log(color);
class Color{
constructor() {
this.R = getRandomInt(255);
this.G = getRandomInt(255);
this.B = getRandomInt(255);
}
}
function generate_color() {
return new Color();
}
function getRandomInt(max) {
return Math.floor(Math.random() * max);
}