我想创建一个全局const变量,该变量需要在超时的回调中声明。脚本是这样的:
setTimeout(() => {
const hourandminute = new HourAndMinute();
}, 1000);
这将创建一个新的const变量,但它仅存在于回调中。如何在不进行以下操作的情况下将其全局化?
let hourandminute;
setTimeout(() => {
hourandminute = new HourAndMinute();
}, 1000);
最佳答案
如果我的评论未引起注意,这是一种可能满足您的要求的模式:请注意,无法重新分配JS常量,但是如果它的值是可变的(如对象),则仍然可以更改它,请看以下示例:
const hourandminute = {};
setTimeout(() => {
hourandminute.prop1 = 'FOO';
hourandminute.prop2 = 'BAR';
}, 500);
setTimeout(() => {
console.log(hourandminute);
}, 1000);