有人请在google开发者控制台中:
之后解释这些注释的含义吗?
例如,当我在控制台中输入baz
时,它会返回一个带有注释Foo
的三角形。这Foo
是什么意思?
Object
中__proto__: Object
的含义是什么?
另一个问题是,当我将鼠标悬停在蓝色的i
按钮上时,它会提示Value below was evaluated just now
。这是什么意思?
我试图找到这些问题的一些参考但却失败了。任何资源都会受到欢迎。
答案 0 :(得分:2)
这个Foo是什么意思?
它是用于创建此对象的构造函数的名称。
function Foo(){} // constructor function
new Foo()
proto :Object中对象的含义是什么?
它是原型链中的下一个原型,对象baz
继承自。
尝试这个稍微复杂的例子:
function Bar(){}
Bar.prototype.someFunction = function(){}
function Foo(){}
Foo.prototype = Object.create(Bar.prototype, {}) // or Foo.prototype = new Bar()
new Foo()
Foo原型链中的第一个值是Bar对象的一个实例。 Bar对象也有一个原型,但它只是一个未命名的对象(它没有像Foo或Bar那样的构造函数)。
那个对象也有一个原型,它只是所有对象继承的通用Object.prototype
。
另一个问题是,当我将鼠标悬挂在小蓝i按钮上时,它会提示刚刚评估下面的值。这是什么意思?
这意味着对象显示的是现在的属性值,而不是记录时的值。
举个例子:
var obj = {a: 20}
console.log(obj)
obj.a = 100
首先,DevTools将打印对象的基本快照:
但是当您展开对象时,DevTools会使用对象的当前值而不是使用快照。