转自:http://www.cnblogs.com/hacker84/archive/2009/04/22/1441500.html
http://www.cnblogs.com/siceblue/archive/2010/03/03/1677306.html
所有JavaScript对象都带有的一个属性,构造函数——constructor。这一属性引用的是原本用来构造该对象的那个函数。
执行constructor后的结果是一个对象,而执行typeof后的结果是一个字符串。看下表的对比:
变量 | typeof 变量 | 变量.constructor |
{a:"b"} | "object" | Object |
["a","b"] | "object" | Array |
function(){} | "function" | Function |
"a" | "string" | String |
66 | "number" | Number |
true | "boolean" | Boolean |
new User() | "object" | User |
通过对传入参数的数量和类型的判断,那么函数重载也就简单了。