我希望能够从一个函数中定义一个位于全局范围内的常量。对于普通变量,可以通过在函数外部定义它并从函数内部设置其值来实现,如下所示:
var carType;
function carType(){
carType = 'Reliant Robin';
}
但是,如果不设置值就不能定义全局变量,这样就不能与常量一起工作,这有什么办法吗?
答案 0 :(得分:4)
答案是“是”,但这不是典型的声明,请参见下面的代码段
function carType(){
Object.defineProperty(window, 'carType', {
value: 'Reliant Robin',
configurable: false,
writable: false
});
}
carType();
carType = 'This is ignored'
console.log(carType);