例如,比较以下两个例子:
function Person(name) {
this.name = name;
}
var john = new Person('John');
console.log(john.constructor);
// outputs: Person(name)
var MyJSLib = {
Person : function (name) {
this.name = name;
}
}
var john2 = new MyJSLib.Person('John');
console.log(john2.constructor);
// outputs: function()
第一种形式在运行时调试很有用。第二种形式需要一些额外的步骤来确定您拥有什么类型的对象。
我知道我可以编写一个描述性的toString函数或调用构造函数上的toSource方法来获取更多信息,但我想要尽可能简单的方法。
有没有办法做到这一点?有什么建议吗?