TypeScript:类/方法中变量/属性的声明

时间:2015-11-07 23:13:32

标签: javascript typescript

有人可以回答以下两个问题:

1)为什么不能在综合类中的属性等方法中声明变量?

我想要的是什么:visualvm(编译错误)
我要做的是:private foo: string(没有编译器错误)

2)何时将变量声明为类的属性,何时仅在方法中声明变量?我不确定Java知识是否适合这种情况。很明显,我会说这取决于变量的范围(如果需要f.e.在两种或更多种方法中 - > gt;属性为OR,否则为>方法的变量)。

谢谢!

1 个答案:

答案 0 :(得分:1)

如果你提到what you're trying to do,那么回答你会更容易。

TypeScript私有类成员在运行时实际上不是私有的;如果你想要真正的隐私,你应该使用closure之类的:

class Foo {
  getSomethingPrivate: () => number
  constructor() {
    var somethingPrivate = 1;
    this.getSomethingPrivate = function() {
      return somethingPrivate;
    }
  }
}