rugu

Results 24 comments of rugu

## 如何使用事件解决回调地狱? 其实 Promise 就是一个例子,写在 then 方法中的回调函数就相当于在监听着 Promise 的 resolve 事件,当 resolve 事件触发时,then 中的回调函数就执行 为了防止回调函数层层嵌套,我们可以使用一个 EventBus 例如我们有两个请求,请求2依赖请求1,先在 eventBus 中注册某个事件,事件处理函数为请求2 当请求 1 执行完毕后,在其回调函数中触发 eventBus 的这个事件,则此时请求2就会被触发,这样就避免了请求2嵌套在请求1的回调函数中,避免了回调地狱的形成 ```js function test1() { function request(req,...

## 惰性计算 惰性求值又叫惰性计算、懒惰求值,也称为传需求调用,目的就是要 **最小化** 计算机做的工作 惰性求值的思想就是:**不需要立即返回的值,就先别计算** **惰性求值是一种编程语言的特性**,很多纯粹的函数式编程语言都有这种特性,但是在 JS 中是没有的 那么在 JS 中如何模拟实现惰性计算呢? 我们知道 Generator 函数就不是立即执行的,而是调用 next 方法后再执行,这一点就和惰性计算的特性很像 实现 take 函数,取出数组中前 n 条数据 ```js function test1() { function* take(n, items) {...

## Generator 如何解决回调地狱的问题? ### 什么是 Generator ? 首先了解两个概念生成器和迭代器,生成器就是用来生成一个可迭代对象的函数 因此 `generator` 就是一个返回值为 `iterator` 的函数,`iterator ` 是一个可迭代对象 Generator 函数的语法为: ```js function *createIterator() { yield 1; yield 2; yield 3; } // generator...

> 好的,我今天晚上看一下这些问题