首页 > Web开发 > 详细

js中new一个对象的过程

时间:2017-02-20 11:36:14      阅读:460      评论:0      收藏:0      [点我收藏+]

使用new关键字调用函数(new ClassA())的具体步骤:

1. 创建空对象{}

2. 使用新对象,调用函数,函数中的this被指向新实例对象:

         {}.构造函数();          

3. 设置新对象的constructor属性为构造函数的名称,设置新对象的__proto__属性指向构造函数的prototype对象

4. 将初始化完毕的新对象地址,保存到等号左边的变量中

注意:若构造函数中没有返回值或返回值是基本类型(Number、String、Boolean)的值,则返回新实例对象;若返回值是引用类型的值,则实际返回值为这个引用类型。

var foo = "bar";
function test () {
        this.foo = "foo";
}
new test();                    //test中的this指新对象,并未改变全局的foo属性
console.log(this.foo);             // "bar"
console.log(new testThis().foo);  // "foo";new和属性访问.运算符优先级相通,从左往右执行

 

js中new一个对象的过程

原文:http://www.cnblogs.com/kevin2chen/p/6418327.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!