JavaScript|JavaScript 的new操作做了什么()
1.对象是什么
(1)对象是单个实物的抽象。
(2)对象是一个容器,封装了属性(property)和方法(method)。
2.构造函数
面向对象编程的第一步,就是要生成一个对象。那怎么生成对象呢?前面说过,对象是单个实物的抽象,生成对象通常需要一个表示某一类事物共同特征的模板,对象通过这个模板来生成。
JavaScript用来生成对象的模板就是构造函数(constructor)。
构造函数有几个特点:
1.构造函数一般以大写字母开头。
2.构造函数内部有this
关键字,表示所要生成的对象。
3.生成对象的时候,必须用new
命令。
new
命令的作用,就是执行构造函数,返回一个对象。
var Car = function () {
this.color = 'yellow';
}
var myCar = new Car();
myCar.color // yellow
上面的代码,利用
new
命令生成了一个实例对象,保存在myCar
中。新生成的实例对象,从构造函数Car
中得到了color
属性。3.new命令的原理 使用
new
命令时,它后面的函数依次执行下面的步骤。1.创建一个空对象,作为将要返回的对象实例。
2.将这个空对象的原型指向构造函数的
prototype
属性。3.将这个空对象赋值给构造函数内部的
this
关键字。4.开始执行构造函数内部的代码。
也就是说,构造函数内部的
this
指的是新生成实例对象,所有针对这个this
的操作,都作用在新生成的对象实例上。总结 总结一下,我们在使用
new
命令的时候,JavaScript在背后主要做了这些事:【JavaScript|JavaScript 的new操作做了什么()】1.生成一个空对象。
2.将这个空对象的原型,指向构造函数的
prototype
。3.将这个空对象赋值给构造函数内部的
this
。4.继续执行构造函数内部的代码。
推荐阅读
- 富有选择的人生
- 花语人生
- 一个人的面朝大海
- 怎样体验对方的感受
- 辟谷随笔6|辟谷随笔6 清晰了辟谷的内在意义
- 想要变精致的猪猪女孩吗(布艺DIY来帮你)
- 我先吃完的,我是第一名
- 6.11-招不到优秀的人才,怎么办()
- 最可怕的不是单身,而是被渣男缠身
- 赵盼儿的乐与忧