构造函数和简单创建大批的对象

创建函数专门来构造对象

我们可以创建一个对象专门用来创建对象

即写一个函数,里面先创建对象即var obj=new Object()

然后里面为对象添加属性,即我们在函数里面设置属性值为形参,方便我们调用这个函数创建对象的时候好改变其中的属性

然后记得函数的最后设置返回值为这个对象,然后就可以用这个函数来创建对象了

如下:
在这里插入图片描述属性名不能设置为形参
我们这样创建对象就能省去很多代码

但是这样的方法无法分辨我们创建的对象类型,当我们打印这些对象名的时候打印的都是object,所以我们接下来可以用构造函数

构造函数

何为构造函数?
构造函数是我们自己设置的一个函数,跟普通的函数没什么区别,那为什么叫做构造函数呢?因为我们调用这个函数的方法比较特殊,我们这个构造函数是用于构造对象的

构造函数的执行流程

立刻创建一个新的对象
将新建的对象设置为函数中的this,在构造函数中可以使用this来引用新建的对象
逐步执行函数中的代码
将新建的对象作为返回值返回

具体如下:
在这里插入图片描述
这里在浏览器上面打印就能看出对象的类型,就是构造函数的名称,使用同一个构造函数创建的对象,我们称为一类对象,也将一个构造函数称为一个类简单来说构造函数就是类

看,我们这里设置了一个gouzao函数,但是注意,构造函数一般习惯上首字母大写,我这里忘记了,构造函数里面用this来代表被构造的对象,然后通过this来向对象添加属性,后面直接var 对象名=new 构造函数(),注意这里为什么这个函数能定义对象呢?最主要就是函数前面的new,一旦用了new就会在内存空间中开辟一个位置,就是创建一个对象,然后再后面的函数对这个对象进行初始化

当然我们这里面也可以设置属性值为形参,让构造对象的时候可以进行多样化

我们将通过该构造函数创建的对象称为该构造函数的实例,或者叫该类的实例

注意
不要搞窝里斗,不要设置构造函数名即类名跟对象名一样

instanceof

作用:
instanceof用于判断一个对象是不是某个类的实例
语法:
对象名 instanceof 类名
返回值:
是的话返回true不是的话返回false

如下:
在这里插入图片描述

注意所有的对象都是Object类的后代,所以,只要是个对象,他就是Object的实例


在这里插入图片描述
这里obj对象是咱们前面就设置过的Gouzao类的对象

再来总结一下this

当以函数的形式调用时,this是window
当以方法的形式调用时,那么谁是这个方法的主子,即有这个方法的对象,this就是谁
当以构造函数调用时,this就是新创建的那个对象
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值