js面向对象编程:怎样定义常量?

  js中有一个keywordconst,但眼下的浏览器似乎还不支持,假设一定要定义一些常量,事实上能够使用闭包,匿名函数实现常量的定义。

比如:

var Class = (function() {
  var UPPER_BOUND = 100;//定义了常量
   var Test={};
  // 定义了一个静态方法 获取常量的方法
  Test.getUPPER_BOUND=function() {
    return UPPER_BOUND;
  }
  return Test;
})();

使用方法:

  var k=Class.getUPPER_BOUND();
                 alert(k);//	

多个常量的情况下:也能够这么写:

var Class = (function() {  
  // Private static attributes.
  var constants = {//定义了两个常量
    UPPER_BOUND: 100,
    LOWER_BOUND: -100
  }
  var Test={};
  // 定义了一个静态方法
  Test.getConstant=function(name){//获取常量的方法
    return constants[name];
  }
  return Test
})();

使用方法:

  var k=Class.getConstant('UPPER_BOUND');
                 alert(k);//


原文地址:https://www.cnblogs.com/yutingliuyl/p/6920973.html