我希望能够从一个函数中定义一个位于全局范围内的常量。对于普通变量,可以通过在函数外部定义它并从函数内部设置其值来实现,如下所示:
var carType;
function carType(){
carType = 'Reliant Robin';
}
但是,您不能在不设置值的情况下定义全局变量,因此这不适用于常量,是否可以解决此问题?
最佳答案
答案是"is",但这不是典型的声明,请参见下面的代码片段
function carType(){
Object.defineProperty(window, 'carType', {
value: 'Reliant Robin',
configurable: false,
writable: false
});
}
carType();
carType = 'This is ignored'
console.log(carType);