例如,如果我在控制台中执行此操作
var Person = function(firstName, lastName) {
this.firstName = firstName;
this.lastName = lastName;
}
Person.species = 'homo sapien';
然后我输入Person
,我只看到函数;但如果我输入Person.species
,我就会回来'同性恋'。我希望能够在控制台中看到存储在函数中的所有属性。这可能吗?
此外,是否有人知道一个很好的资源来解释这里发生的事情背后的机制?我正在努力使Person
成为一个函数和一个对象意味着什么。函数是否存储在Person
对象的某个属性上?
答案 0 :(得分:5)
使用console.dir
:
console.dir(Person);
我正在努力解决
Person
同时兼顾功能和对象的问题。函数是否存储在Person
对象的某个属性上?
没有。每个函数都是JavaScript中的对象。它们只是特殊对象,因为它们是可调用的。就像数组是对象一样,也有一些特殊的内部行为。