为什么 aa 的属性可以修改, 而直接 aa.a = 1 是不允许的
如图所示
1
nightwitch 216 天前
想要真正的 readonly 用 Object.freeze()。
ts 只能靠静态分析来做这种检查,总有 case 可以绕开 |
2
mxT52CRuqR6o5 216 天前 via Android
不仅如此,你在 ts 里定义一个类型为 number 的属性在运行时还能给它赋 string 值呢
|
3
Trim21 216 天前
你 Proxify 的实现有问题呗。
不过我也不确定 typescript 能不能实现这个类型安全。。。 |
4
PainAndLove 216 天前
ts 只是静态的格式校验、报错提示。 运行时不会起作用。
|
5
IvanLi127 216 天前 via Android
我感觉 Proxify 类型定义没考虑到这个情况,得改改。
|
6
Al0rid4l 216 天前
typescript 的类型系统是 unsound 的
|