任何人都可以帮助我理解什么是原型阴影,以及它与原型链接的区别,我正在阅读许多关于相同的文章,但这并没有明确我的概念。
答案 0 :(得分:-1)
function Person(name) {
this.firstName = 'default';
this.lastName = 'default';
}
let joan = new Person()
joan.firstName = 'joan';
console.log(joan.firstName);//joan
console.log(joan.lastName);//default
我有自己的理解方式Prototype
。基本上尝试理解它,原型使您能够访问和映射任何对象的属性/属性。
上面演示的代码,在执行joan.firstName
的日志记录时,会检查对象firstName
中是否存在joan
属性,因为是,它会影响原型并打印{{1 }}。
至于记录joan
时,首先检查对象joan.lastName
中是否存在属性lastName
,显然不存在,因此引擎使用joan
遍历prototype chaining
1}} object并从中获取值。