function Foo(){};
var f = new Foo();
这个过程等同于
function Foo(){}
var f = new Object(); // 新建一个对象
f.proto = Foo.prototype;// 使该构造函数的隐式原形等于实例函数的显示原形
Foo.call(f); // 使用call方法调用函数并且指定上下文的'this'
// 当调用Foo方法的时候,该方法的this值会绑定到f对象上。
function Foo(){};
var f = new Foo();
这个过程等同于
function Foo(){}
var f = new Object(); // 新建一个对象
f.proto = Foo.prototype;// 使该构造函数的隐式原形等于实例函数的显示原形
Foo.call(f); // 使用call方法调用函数并且指定上下文的'this'
// 当调用Foo方法的时候,该方法的this值会绑定到f对象上。
本文标题:new一个函数的过程
本文链接:https://www.haomeiwen.com/subject/tvlspftx.html
网友评论