js物件導向程式設計:如何定義常量?

你的財神爺發表於2017-11-29

  js中有一個關鍵字const,但目前的瀏覽器似乎還不支援,如果一定要定義一些常量,其實可以使用閉包,匿名函式實現常量的定義。

例如:

[javascript] view plain copy
  1. var Class = (function() {  
  2.   var UPPER_BOUND = 100;//定義了常量  
  3.    var Test={};  
  4.   // 定義了一個靜態方法 獲取常量的方法  
  5.   Test.getUPPER_BOUND=function() {  
  6.     return UPPER_BOUND;  
  7.   }  
  8.   return Test;  
  9. })();  

用法:

[javascript] view plain copy
  1. var k=Class.getUPPER_BOUND();  
  2.                alert(k);//    

多個常量的情況下:也可以這麼寫:

[javascript] view plain copy
  1. var Class = (function() {    
  2.   // Private static attributes.  
  3.   var constants = {//定義了兩個常量  
  4.     UPPER_BOUND: 100,  
  5.     LOWER_BOUND: -100  
  6.   }  
  7.   var Test={};  
  8.   // 定義了一個靜態方法  
  9.   Test.getConstant=function(name){//獲取常量的方法  
  10.     return constants[name];  
  11.   }  
  12.   return Test  
  13. })();  

用法:

[javascript] view plain copy
  1. var k=Class.getConstant('UPPER_BOUND');  
  2.                alert(k);//  

相關文章