javascript – 为什么我不能访问TypeScript私有成员?

我正在寻找TypeScript中私有成员的实现,我发现它有点令人困惑. Intellisense不允许访问私有成员,但在纯JavaScript中,它就在那里.这让我觉得TS没有正确实现私有成员.
有什么想法吗?

class Test{
  private member: any = "private member";
}
alert(new Test().member);
最佳答案
与类型检查一样,成员的隐私仅在编译器中强制执行.

私有属性是作为常规属性实现的,并且不允许类外的代码访问它.

要在类中创建真正私有的东西,它不能是类的成员,它将是在创建对象的代码内的函数范围内创建的局部变量.这意味着你不能像类的成员那样访问它,即使用this关键字.

转载注明原文:javascript – 为什么我不能访问TypeScript私有成员? - 代码日志