我正在创建一个命名空间,并且想知道如何限制命名空间变量的可访问性,以便只能从命名空间内部访问它。
在我的示例代码中,我希望 PrivateExec 为private
,并且无法在命名空间外访问。
var demo = {
a: "demo",
b: {
PrivateExec: function () {
//execute
},
ExecA: function () {
PrivateExec();
},
ExecB: function () {
PrivateExec();
}
}
}
demo.ExecA(); //success
demo.PrivateExec(); //fails because of private
答案 0 :(得分:-2)
请勿使用此代码:您的变量应该是私有的!
var value = Symbol();
class MyClass {
constructor(){
this[value] = "this is a test string";
}
}
var call = new MyClass();
console.log(call.value); // should be undefined