【发布时间】:2019-02-07 11:17:41
【问题描述】:
我正在尝试instanceof 运算符。我试过这样的东西。
function f(){ return f; }
new f() instanceof f;
// false
为什么这是false,而这些是true
function f(){ return f; }
new f() instanceof Function;
// true
function f(){ return f; }
new f() instanceof Object;
//true
当尝试将其保存到变量时,结果仍然相同
function f(){ return f; }
var n = new f();
n instanceof f;
// false
n();
// function f()
n() instanceof f;
// false
n instanceof Function // true
n() instanceof Function // true
为什么return f; 声明改变了一切?
return f 做了什么导致这种行为?
【问题讨论】:
标签: javascript ecmascript-6 ecmascript-5 ecmascript-2017