当前位置: 首页 > 网络应用技术

一次了解原型修改和重写

时间:2023-03-06 11:00:34 网络应用技术

  首先查看此示例

  执行,控制台打印:

  目前,构造函数的指向

  重写原型,结果可能与我们的期望不同

  执行,控制台打印:

  目前,关键是

  首先,我们需要清楚。当我们是一个新对象时,将有以下步骤:

  请注意,当我们重写原型时,我们在使用对象对象的方法中创建了一个新对象,并且没有定义

  因此,在此过程中,构造函数缺失。根据原始链的搜索规则,当前级别将找不到它,它将继续找到它。作为对象,其方向:

  当然,这仍然是

  所以

  当然,还有其他值得注意的观点,例如重写原型的方向仍然相同。

  为了更彻底地理解重写原型,让我们举一个示例,首先声明示例,然后重写:

  执行,控制台打印:

  可以看出,指向是在重写之前,在重写后未调用

  自然,它不会改变

  参与在

  仍以上述示例为例,您可以在重写时手动分配值

  重写原型时,它将产生新的损失。当我们重写原始链时,我们应该注意到这个问题,我们可以手动恢复任务的指向。

  原始:https://juejin.cn/post/7101934229314863118