new关键字创建对象的4个阶段
程序员文章站
2022-03-31 17:52:02
...
题目解析
先看代码
var Func=function(){ }; var func=new Func ();
new共经过了4几个阶段
1、创建一个空对象
var obj=new Object();
2、设置原型链
obj.__proto__= Func.prototype;
3、让Func中的this指向obj,并执行Func的函数体。
var result =Func.call(obj);
4、判断Func的返回值类型:
如果是值类型,返回obj。如果是引用类型,就返回这个引用类型的对象。
if (typeof(result) == "object"){ func=result;}else{ func=obj;;}
相关推荐:
以上就是new关键字创建对象的4个阶段的详细内容,更多请关注其它相关文章!
上一篇: 正负数数组最大子序列
推荐阅读
-
C++用new与不用new创建对象的区别
-
关于在服务器上运行"new ActiveXObject("Word.Application")"时出现"Automation服务器不能创建对象。"的问题!
-
关于在服务器上运行"new ActiveXObject("Word.Application")"时出现"Automation服务器不能创建对象。"的问题!
-
Java中创建对象的六个步骤 细分后(new关键字)对象头详细介绍
-
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
-
C++用new与不用new创建对象的区别
-
不用构造函数(Constructor)new关键字也能实现JavaScript的面向对象_javascript技巧
-
你可能不知道的秘密——String s=new String(“abc”)到底创建了几个对象?
-
不用构造函数(Constructor)new关键字也能实现JavaScript的面向对象_javascript技巧
-
JavaScript中使用构造器创建对象无需new的情况说明_javascript技巧