学习 JavaScript 的第十天

今天终于把闭包搞明白了。

闭包的本质

闭包就是函数记住了它被创建时的作用域。这听起来简单,但实际用起来很强大。

function createCounter() {
  let count = 0;
  return function() {
    count++;
    return count;
  };
}

原型链

JavaScript 的继承是基于原型链的。每个对象都有一个 __proto__ 指向它的原型。

理解了这个之后,很多之前觉得奇怪的行为都讲得通了。