您是否试图保护变量不被修改?如果是这样,那么您可以使用模块模式:
var CONFIG = (function() {
var private = {
'MY_CONST': '1',
'ANOTHER_CONST': '2'
};
return {
get: function(name) { return private[name]; }
};
})();
alert('MY_CONST: ' + CONFIG.get('MY_CONST')); // 1
CONFIG.MY_CONST = '2';
alert('MY_CONST: ' + CONFIG.get('MY_CONST')); // 1
CONFIG.private.MY_CONST = '2'; // error
alert('MY_CONST: ' + CONFIG.get('MY_CONST')); // 1
使用此方法,无法修改值。但是,你必须在 CONFIG 上使用 get()方法:(。
如果您不需要严格保护变量值,那么只需按照建议执行并使用 ALL CAPS 约定。
const
关键字在ECMAScript 6 草案中,但它到目前为止只享有一些浏览器支持: http : //kangax.github.io/compat-table/es6/ 。语法是:
const CONSTANT_NAME = 0;