new 一个对象发生了什么

作者: 赵永盛 | 来源:发表于2019-04-30 09:31 被阅读6次

Function A(){}; new A() 发生了什么?

  1. var obj = {}
  2. obj.[[proto]] === A.prototype
  3. A.call(obj)

解析:

  首先创建一个空对象
  指向构造函数的原型链
  执行构造函数,将 this 上属性拷贝到空对象

注意:若构造函数中返回this或返回值是基本类型(number、string、boolean、null、undefined)的值,则返回新实例对象;若返回值是引用类型的值,则实际返回值为这个引用类型。

相关文章

  • js中new 一个对象究竟发生了什么

    一直以来,我们都知道new一个对象,但是new一个对象背后,发生了什么呢? 首先,我们定义一个Person对象,怎...

  • new 一个对象发生了什么

    Function A(){}; new A() 发生了什么? var obj = {} obj.[[proto]...

  • new 一个对象发生了什么

    使用 new 操作符实例化 Person 的操作等于使用 new 调用其构造函数。唯一可感知的不同之处就是, Ja...

  • JS中new详解

    new对象底层发生了什么 new 一个实例对象的底层实际就3步 1.创建一个 Object 对象 2.让新创建的对...

  • new 创建对象发生了什么

    参考自:new创建对象的过程发生了什么 示例代码: 解析:

  • 面向对象

    var object = new Object() 时,发生了什么? 创建一个空对象作为 this this.__...

  • 深入理解 Function constructor - java

    使用new关键字发生了什么使用new 关键字就是新创建一个对象。 调用这个方程发生了什么调用方程之后,就会执行方程...

  • JavaScript new一个对象发生了什么

    1.创建一个新对象son2.新对象会被[[prototype]]原型对象连接起来son.__proto__ ===...

  • ★ 原型、原型链、继承

    如何理解原型,如何理解原型链? new 一个对象发生了什么? new 的实现 每一个函数 ( 类 ) 都有一个 p...

  • js基础题

    1.new 一个对象,都发生了什么: (1)创建一个空对象,作为将要返回的对象实例。 (2)将这个空对象的原型,指...

网友评论

    本文标题:new 一个对象发生了什么

    本文链接:https://www.haomeiwen.com/subject/teqmnqtx.html