在 JS 中,每个对象都有一个隐藏属性 [[Prototype]] (通常通过 __proto__ 访问)。
当你访问一个属性时,如果对象自己没有,JS 就会去它的原型里找。如果原型也没有,就去原型的原型找... 直到源头!
这就是原型链!
好绕啊!我就当它不存在!直接复制粘贴代码!🤪
不懂原型链,你就永远理解不了为什么数组能用 .push(),字符串能用 .toUpperCase()。
因为它们继承自 Array.prototype 和 String.prototype!
点击下方的对象,查看它的原型链结构。