考虑一个基本示例,我试图请求对象中不存在的属性
案例一:(一般对象)
var obj1 = {
name: "Jack",
age: 29
}
console.log(obj1.city);
回答: undefined
这意味着如果存在不存在的属性,则正确地称为undefined.
案例二:(对象构造器)
现在,我要做同样的事情——首先创建一个继承自的字符串,String Constructor继承自Object Constructor。__proto__Object-Constructor 没有名为的属性,__proto__因此答案应该是未定义的。而是(奇怪地)它返回null。这是无法理解的。
As far as I know, if the property of an Object is not found - its value should be `**undefined**` and not `**null**`.

现在,请有人帮助理解 - 在上升之后,prototype chain概念和实现应该保持不变。所以,如果没有找到 的__proto__属性,为什么答案不Object Constructor应该是???undefinednull
眼眸繁星
慕勒3428872
随时随地看视频慕课网APP
相关分类