2019-06 上旬 ✅
- 创建于:2019-06-09
- 更新于:2023-03-16

# 2019-06-10: new 操作发生了什么?如何用函数实现?✅✅
好好想想先 😌
- 参考链接
- 一句话
- 创建一个以这个函数为原型的空对象.
- 将函数的
prototype赋值给对象的__proto__属性 - 将对象作为函数的
this传进去。如果有return出来东西是对象的话就直接返回return的内容,没有的话就返回创建的这个对象
- 代码实现
function objectFactory(Constructor, ...rest) { const instance = Object.create(Constructor.prototype) const result = Constructor.apply(instance, rest) return typeof result === 'object' ? result : instance }
# 2019-06-09: 什么是 javascript 迭代器和生成器?✅✅
好好想想先 😌
- 参考链接
- 一句话
- 迭代器是一个拥有 next()方法的特殊对象,每次调用 next() 都返回一个结果对象
{ done: boolean, value: any } - 生成器是一种返回迭代器的函数,通过 function 关键字后的星号(*)来表示
- 迭代器是一个拥有 next()方法的特殊对象,每次调用 next() 都返回一个结果对象