2012-10-28 2 views
0

우리는 변수 값을 보호 할 수 있으므로 변수 값을 기존 값으로 변경할 수 없습니다! 구현이 객체에 아무 문제가 없다 .. ?? 객체를 사용하여 예를 들어자바 스크립트 상수

..

const x = 5; 

x = 10; 

alert(x) 
// will be returned 5 

..

const obj = { 
     init: function() { 
     obj.show() 
     }, 
     show: function() { 
     //.. 
     }, 
     hide: function() { 
     //.. 
     } 
    } 
    obj.init(); 

답변

1

const 키워드는 현재 모든 브라우저에서 지원되지 않으며이 사용하고있는 공식 자바 스크립트 사양의 일부입니다 오늘.

var getConstant = function(key) { 
    var constants = { x: 5 };   
    return constants[key]; 
}; 

alert(getConstant("x")); 
: (https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Statements/const)

는 함수에 필요한 동작을 캡슐화 고려 상수를 달성하기


또는 단순히 값 설정에서 제 3 자 보호를 위해 적절한 범위와 변수를 사용 :이 옵션을 사용하면 JS5을 사용하여 멀리 얻을 수있는 경우

function myModule() { 
    var x = 5; 
    doSomethingWith(x); 
} 
+0

감사 @mickeyreiss 메신저는 거의 약 OOP의 범위가 깜빡 ..! –

2

을 :

var CONST = { 
    NAME: "The Cool Gizmo", 
    VERSION: 2 
}; 
Object.freeze(CONST); 

alert(CONST.NAME); 
2
var myObj = (function() { 
    var privVar1 = 111, 
     privVar2 = 222; 

    var getConstants = function() { 

     return { priv1: privVar1, priv2: privVar2 } 
    }; 
    return { getConstants: getConstants }; 
})(); 

myObj.getConstants().priv1