类别:js / 日期:2022-09-23 / 浏览:224 / 评论:0

作用如下:

(1)创建一个空对象。

(2)由this变量引用该对象

(3)该对象继承该函数的原型(更改原型链的指向)

(4)把属性和方法加入到this引用的对象中。

(5)新创建的对象由this引用,最后隐式地返回this,过程如下:


var fn = function () { };
var fnObj = new fn();
1、创建了一个空对象

var obj = new object();
2、设置原型链

obj._proto_ = fn.prototype;
3、让fn的this指向obj,并执行fn的函数体

var result = fn.call(obj);
4、判断fn的返回值类型,如果是值类型,返回obj。如果是引用类型,就返回这个引用类型的对象。

if (typeof(result) == "object"){  
   fnObj = result;  
} else {  
   fnObj = obj;
}


版权声明 : 本文未使用任何知识共享协议授权,您可以任何形式自由转载或使用。

评论区

发表评论 / 取消回复

必填

选填

选填

◎欢迎讨论,请在这里发表您的看法及观点。

«    2023年11月    »
12345
6789101112
13141516171819
20212223242526
27282930

最新留言