请考虑以下代码:
function f() { function Ctor() {} return { instance: new Ctor(), referenceToCtor: Ctor }; } var a = f(); var b = f(); a.instance instanceof a.referenceToCtor; // true b.instance instanceof a.referenceToCtor; // false这告诉我们关于instanceof和函数语句的含义是什么?
这是否意味着每次调用f都会实例化一个名为Ctor全新Function-object,因此instanceof返回false 。
这类似于instanceof Array和多个窗口的问题吗?
Consider the following code:
function f() { function Ctor() {} return { instance: new Ctor(), referenceToCtor: Ctor }; } var a = f(); var b = f(); a.instance instanceof a.referenceToCtor; // true b.instance instanceof a.referenceToCtor; // falseWhat does this tell us about the meaning of instanceof and function statements?
Does this mean that each time f is invoked a completely new Function-object named Ctor is instantiated and hence instanceof returns false.
Is this similar to the problems of instanceof Array and multiple windows?
最满意答案
这是否意味着每次调用f都会实例化一个名为Ctor全新Function-object,因此instanceof返回false 。
是。
这类似于instanceof Array和多个窗口的问题吗?
是。
Does this mean that each time f is invoked a completely new Function-object named Ctor is instantiated and hence instanceof returns false.
Yes.
Is this similar to the problems of instanceof Array and multiple windows?
Yes.
更多推荐
发布评论