现状最佳实践 ES5_jQ前 + ES6_React后 (浏览器) ,
① TS 太像 C# ,只看DENO成败。
② Kotlin => JS 这种隔山打牛方式,估计不能完全抛弃 JS 。优势在于 Spring Boot 和 Android App(不是安卓)
③ Go Rust 的 WASM 技术 目前来讲,性价比太低,还不如 GraphQL 带来的收益。
不管怎么说 Go 是"互联网"版本的 erlang ,DEVOPS 和 Cloud革命 DSL语言。net/http=>netty ,io基于stream,crypto
④ 另一条路 Flutter(uwp都投靠了)专吃移动端 => 肛的是 RN ,这是 F 和 G 家的广告之战。PC门户 和 后台 仍然没有大一统,所以需要 ES5 和 ES6。
PC 端是非常难统一的,百度都来了搞 兼容IE8的框架,可见一斑。
⑤ 最后国内现状 微信小程序 微信H5页面 ,都需要 ES5 和 ES6 。 (到这里,取决于做什么产品,后台当然可以 React ,门户就算了。)
⑥ Swift/Kotlin/C#/Dart 平台 原生渲染最佳,所以 Electron 适合业务/小工具,从业务量来讲 ♥ 微信小程序 ♥ > H5游戏 > 安卓游戏 > ios游戏 > windows游戏 。
变量
ES6 之前 , JS 的词法作用域的 变量提升 会把变量顶到函数/全局的顶部。
引入块级作用域:let 和 const
使用 const 声明对象 == final 对象
temporal dead zone 社区给TDZ一个名字 叫暂时性死区。== 其实就是【变量脱离块级作用域】 是默认值是系统定义的 underfined ,没脱离则受 let const 影响。