Angular类成员在某种程度上对所有对象都是通用的

时间:2015-10-27 07:09:21

标签: javascript angularjs

我有以下代码:

define([], function(){
   function MyClass(Dependency1, Dependency2){
       var private1;
       // Ctor
       function MyClass(param1){
           private1 = param1;
       }
   }

   MyClass.prototype.someMethod(){...}
}

所以这是我的问题 - 当我实现MyClass类的2个对象时,应该是private1字段对两个实例都是通用的。如果一个实例更改了该字段,则它也会在第二个实例中更改。如果我将其更改为this.private1,则它特定于每个实例,但它不是私有的。 我该怎么办?

由于

2 个答案:

答案 0 :(得分:1)

我想如果您只是简单地改变它,您的问题就会得到解决,

define([], function(){
   function MyClass(Dependency1, Dependency2){
       var private1;
       // Ctor
       function MyClass(param1){
           this.private1 = param1;  //look how I access the object's property
       }
   }

   MyClass.prototype.someMethod(){...}
}

无论如何,如果我没有得到你的意图或...... JSfiddle我们可以看到问题,那就太棒了。

答案 1 :(得分:0)

私有1变量需要在MyClass构造函数中声明。

Crockford是你的朋友:

http://javascript.crockford.com/private.html