@
3dwelcome 我记得本来 JS 是想加类型的 你可以看下 ECMAScript 4
https://evertpot.com/ecmascript-4-the-missing-version/但是失败了
然后有了 TypeScript Dart Flow 基本上都是为了给 JS 加静态类型
结果就是 TS 成功了 Dart 在靠 Flutter 续命 Flow 死了
当初 ES4 失败 我记得是因为大部分 JS 的开发者并不想要类型 觉得太麻烦了 太复杂
而且就是给网页写点 script 方便好用才更重要 灵活性更重要
但是随着 webapp 越来越大 需要团队协作的越来越多
所以静态类型的重要性就越来越大
我个人认为 现在 JS 根本不打算再尝试加入类型:
1 是有之前的失败
2 已经有了很成熟的 TS 和 Dart 有需要的人为啥不用
3 现在 JS 核心人员有不少就是不喜欢 TS 和静态类型的 就是不想要和 TS 这些一样 你看下最近出的 private field/method 就知道了
@
creanme 既然是静态类型 肯定会越来越复杂的呀 毕竟有大型工程的需要
----
@
3dwelcome 另外我猜你可能是希望通过引入静态类型来提高 JIT 性能 可能你不是特别在意静态类型本身
这样其实各大浏览器开发商已经在往这个方面努力了
之前有 asm.js 其实就是给 简化的 JS 加上基本类型的静态类型 这样就可以直接编译成本地代码执行
然后 asm.js 进化成了 wasm
所以 JS 本身就没有必要为了性能去添加静态类型的复杂度
想要性能 可以用支持静态类型的语言之间编译成 wasm
想要灵活性 就用 ES 或者编译到 es5 就是