Twitter/X 上有人发布了一个话题:“怎么样?JavaScript到底是垃圾还是神作?到底是哪一个?”,类似这种话题在某乎应该见怪不怪了吧?
图片
有意思的是某歪国网友回复到: “真不敢相信你还要这么费劲思考这个问题…… JS就是最垃圾的,就连Brendan Eich也会同意。”
你说 JavaScript “最垃圾” 吧,基本上代表你的个人言论,也就算了,这还 @ 了 JavaScript 的创建者 @Brendan Eich,说人家也认同,人家又不是 Node.js 的创建者(此前发布,“Node.js 之父:「十个 Node.js 的设计错误」以及其终极解决办法 Deno”)。
这人家 JS 创建者 @Brendan Eich 怎么能忍呢?
图片
50% 吧,如果真是完全垃圾不就早应该消失了吗?这话听起来好像也没错。JavaScript 最初的设计确实有不好的地方,但这些年标准化的工作一直在推进。
例如以前写 JS,声明变量要用 var,导致没有作用域,是不是就像脱缰的马儿,控制不住啊,你都不知道这个变量在哪个地方就被改了。还有 callback 的回掉地狱是真的令开发者头疼。
TC39 的 JS 标准提案已经从 ES6 到 ES16(现在看 ES2025 都已经有了~) 了吧,期间解决了很多以前不友好的设计问题,所以说如果站在当前时间点,也就不能再说人家是 “最垃圾” 了... 😄 好比人家下面说的这句回复:
图片
还有个有意思的地方,JS 创建者 @Brendan Eich 在前面的回答中有提到 对于大型项目会使用类型检查器,但没有提及具体的类型检查器是啥!
以下是被网友问到后的回复:
图片
哦!原来 JS 创建者 @Brendan Eich 更喜欢 Flow 而不是 TS!
两个问题,欢迎大家评论区讨论:
- 对于大型项目类型检查,你会用 TS 还是 Flow 或其它呢?
- 你认为 JS 是垃圾还是神作?
参考:
- https://x.com/BrendanEich/status/1795882916167430618
- Node.js 之父:「十个 Node.js 的设计错误」