zpf124
2019-07-24 11:03:02 +08:00
任何一个编译语言做 高版本到低版本的 transform 都是有些麻烦的, 但其实不是不能做, 没多少人做的原因其实一目了然.
只有 js 这种运行环境不受官方控制, 各大浏览器的引擎不受约束, 各做各的导致标准推行困难. 新语法难以直接投入使用, 才被迫出来 babel 这种东西.
其他语言 包括同样是解释性语言的 python 有什么 3 转 2 的项目特别受关注,几乎成为标配的吗?
因为别人可以直接说 这项目就是用新标准写的,爱用不用,用就去安新版本的环境,或者你自己手动改造到旧版本去,爷不伺候.
而且 因为需要将语法糖转换到旧语法, 你听说过"js 推出了一个新写法,这个写法使用了 xx 特性,性能提高了 xx 倍"这种其他语言发新版本会提及话吗?
js 里类似的话是什么呢 "v8 引擎采用了 xx 算法,优化了某种类型的某种调用的性能"
至于打包工具来说, maven 有些复杂,有些老旧死板, 但其实比 webpack 只强不弱.