假设我有一个名为 Foo
的 JavaScript 函数/类它有一个名为 bar
的属性.我想要 bar
的值在实例化类时提供,例如:
var myFoo = new Foo(5);
将设置
myFoo.bar
到 5。如果我制作
bar
一个公共(public)变量,然后这个工作,例如:function Foo(bar)
{
this.bar = bar;
}
但是,如果我想将其设为私有(private),例如:
function Foo(bar)
{
var bar;
}
那我该如何设置私有(private)变量
bar
的值?使其可用于 foo
的所有内部功能?
最佳答案
关于 javascript 中的私有(private)和 protected 访问的最佳教程之一在这里:http://javascript.crockford.com/private.html .
function Foo(a) {
var bar = a; // private instance data
this.getBar = function() {return(bar);} // methods with access to private variable
this.setBar = function(a) {bar = a;}
}
var x = new Foo(3);
var y = x.getBar(); // 3
x.setBar(12);
var z = x.bar; // not allowed (x has no public property named "bar")
关于javascript - 如何在构造函数中设置javascript私有(private)变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6799103/