美文网首页
JS 中 new 操作符的简单理解

JS 中 new 操作符的简单理解

作者: Hunter_Gu | 来源:发表于2017-01-29 12:39 被阅读40次

在声明复杂类型的变量(如函数)时,我们可以通过构造函数的方式进行声明。
如:声明一个函数

var foo = new Function("console.log('i am a function')");

或者通过构造函数的方式新建一些组件时

function F(name){
    this.name = name;
}
var f1 = new F('Couzin')

我们可能知道,这样创造的实例 f1._proto_ = F.prototype ,这样的结果是通过 new 操作符实现的。
那么,在 new 的过程中发生了什么?
实际上就分为简单的三个步骤:

    1. var f1 = {};//创建实例
    1. f1._proto_ = F.prototype;//创建实例
    1. F.call(f1);//初始化实例
      所以函数 F 中的 this 是实例 f1 的实例变量,只能在 f1 中访问到。

相关文章

  • JS 中 new 操作符的简单理解

    在声明复杂类型的变量(如函数)时,我们可以通过构造函数的方式进行声明。如:声明一个函数 或者通过构造函数的方式新建...

  • JS基础回归01:new操作符,原型和原型链

    本篇介绍 new 操作符的背后原理以及 JS 如何依赖原型形成原型链,完成继承。 new 操作符的本质 new 操...

  • js面试题--new的原理

    JS中的new操作符 和其他高级语言一样,JS中也有new运算符,我们知道new运算符是用来实例化一个类,从而在内...

  • new操作步骤

    js中的new()到底做了些什么?? 要创建 Person 的新实例,必须使用 new 操作符。以这种方式调用构造...

  • js new 运行机制

    js手札--js中new到底做了些啥JS核心系列:理解 new 的运行机制深入理解 Javascript 运行机制及原型

  • 关于 new 操作符

    1. 为什么要有new操作符? JS 的 new 到底是干什么的? 本文指出,new 操作符其实就是个语法糖,用了...

  • js里new操作符理解

    对于: new操作符具体干了什么呢?其实很简单,就干了三件事情。 第一步,我们创建了一个空对象obj 第二步,我们...

  • js中new操作符

    js中的new操作符MDN中是这样说的。new 运算符创建一个用户定义的对象类型的实例或具有构造函数的内置对象的实...

  • 面试题【Day10】

    本篇绪论 1, call、apply、bind 2, Object.create() 3,JS中的new操作符的原...

  • JS中的new操作符

    转载 JavaScript中new操作符用于创建一个给定构造函数的对象实例。 如下例子: 我们定义了一个构造函数P...

网友评论

      本文标题:JS 中 new 操作符的简单理解

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