Ray

Results 54 comments of Ray

@ystarlongzi @cobish @zjp6049 我觉得 for...of 的主要运用的场景并不是作者文中开头提到的那些吧。比如你要遍历一个数组,不想使用 for 循环,数组提供的 map/forEach 等也都能完成对应的功能。for...of 只能搭配部署了 iterator 接口的值来进行使用。而不同值的遍历也有对应的遍历方法,比如要遍历对象,使用 for ... in 循环同样能完成对应的工作。

@zikuai @wd2010 @snoopy1412 这块大家可以了解下在node.js中模块导出内容时 exports 和 module.exports 之间的区别(exports 就是 module.exports 的引用)。 另外就是 node.js 一个模块引入另外一个模块的变量的时候就是获取的 module.exports 上导出的内容。所以如果你在 child.js 是通过 exports 这种形式去导出的内容,那么在 main.js 里面也有是获取的 exports 这个对象上某个属性的内容,你在 child.js 里面改变了这个属性的内容,那么 main.js 也会有变化。 但是如果你在 child.js...

@divasatanica 这里可以理解为webpack最后编译出来的代码有一套自己的模块系统,如果是同一个 chunk 的不同模块当然是同步加载的,如果你在源码当中使用了 webpack 提供的异步加载模块的语法,例如:`import(xxx)`、`require.ensure`等,那么对应的模块也就会被异步加载了。

@xiaozhouwu `babel-polyfill` 内部实现包含了所有的`polyfill`,而且部分`polyfill`是通过改变全局对象的方式。使用的方式也是直接在你的入口文件中去引入`babel-polyfill`。 `babel-runtime`及其插件`babel-plugin-transform-runtime`,会在`babel`对你的代码编译的过程中,分析你的代码,如果用到了一些新的`API`,需要引入`polyfill`的代码,会自动帮你引入在`core-js`或者`regenerator.js`中的shim代码。`babel-plugin-transform-runtime`这个插件主要是做了一层映射,映射到`babel-runtime`内引用的`core-js`或`regenerator.js`中具体对应的`helper`: 如果你使用了一些新的实例上的方法,例如: ```javascript const str = [1, 2, 3] str.includes(2) ``` 像这种实例上添加的新的方法,仅仅用core-js中的shim是没法解决的。这个时候必须要引入`babel-polyfill`。 `babel-runtime`及其插件`babel-plugin-transform-runtime`事实上就是按需去引入你需要的`helper`,而`babel-polyfill`是全部引入进去,从某种程度上说,确实比全部引入`babel-polyfill`最终打出的包更小。

最近刚开始看RxJS。也觉得有点懵逼。 博主的文章很清晰。谢谢分享,期待后续之作。

现在还收人不?

@daoket 那个例子当中使用数组的语义化没有 map 表现的更好呀。

期待后续。 有个小问题: > 本文已经做出一个实现 https://github.com/livoras/nestscript, 并且已经成功编译了一些经典的第三方库,例如 moment.js、lodash.js、mqtt.js,并且应用在了百万级日活的产品上。 那个链接把 "," 也加上去了,导致打开对应仓库 404 了。

@JasKang 嗯你的理解是对的。dirty check 如果没有发生变化的话,后续 effect 的代码就不需要执行了。 ```javascript const effect = new ReactiveEffect(fn, () => {}, () => { if (effect.dirty) { effect.run() } }) ```

@githubxiaowen 感谢分享