为什么TypeScript禁止私有的setter用于同名的公共getter?

the*_*Dmi 9 typescript

TypeScript中禁止使用公共getter和同名的私有setter,正如SO在各种问题中已经讨论过的那样.

我的主要编程语言是C#,这非常好.我也认为它是一个有用的结构,说实话,我也没有真正看到在TypeScript中允许它的问题.

为什么TypeScript会禁止这个?这个问题不是关于变通方法或类似问题,我只是想知道这个设计的原因.

编辑:可以在此问题上找到代码示例.

Mar*_*cka 5

有一位来自TypeScript作者的评论:https://github.com/Microsoft/TypeScript/issues/2845#issuecomment-176990923

访问器与类型系统中的属性对称.我们所做的任何事情都需要在类型上表现出来,并且在属性上可以表达.添加新的访问修饰符以启用private_set/public_get会增加语言和学习曲线的复杂性,并且从中获得的值将不会与增加的复杂性相匹配.