另外,1楼的解释并不正确。
new test() instanceof Function 返回true才对。因为test本身是个函数,任何函数的__proto__都指向Function.prototype。
此外,new test() instanceof Object也会返回true。因为函数也是对象,而所有对象的原型链上都会有Object.prototype。(除了你用Object.create(null)等hack方法创造出的特殊对象)