构造函数和类

用new操作符调用函数

  • 现在,我们学习一种新的函数调用方式:

JS规定,使用new操作符调用函数会进行“四步走”:

        1)函数体内会自动创建出一个空白对象。

        2)函数的上下文(this)会指向这个对象。

        3)函数体内的语句会执行。

        4)函数会自动返回上下文对象,即使函数没有return语句。

四步走详解 - 第1步

  • 第1步:函数体内会自动创建出一个空白对象。

四步走详解 - 第2步

  • 第2步:函数的上下文(this)会指向这个对象。

四步走详解 - 第3步

  • 第3步:执行函数体中的语句。

四步走详解 - 第4步

  • 第4步:函数会自动返回上下文对象,即使函数没有return语句。

上下文规则总结

规则

上下文

对象.函数()

对象

函数()

window

数组[下标]()

数组

IIFE

window

定时器

window

DOM事件处理函数

绑定DOM的元素

call和apply

任意指定

用new调用函数

秘密创建出的对象

什么是构造函数

  • 用new调用一个函数,这个函数就被称为“构造函数”,任何函数都可以是构造函数,只需要用new调用它。
  • 顾名思义,构造函数用来“构造新对象”,它内部的语句将为新对象添加若干属性和方法,完成对象的初始化
  • 构造函数必须用new关键字调用,否则不能正常工作,正因如此,开发者约定构造函数命名时首字母要大写。
  • 一定要记住:一个函数是不是构造函数,要看它是否用new调用,而至于名称首字母大写,完全是开发者的习惯约定。

  • 构造函数中的this不是函数本身。

尝试为对象添加方法

类与实例

构造函数和“类”

  • Java、C++等是“面向对象”(object-oriented)语言。
  • JavaScript是“基于对象”(object-based)语言。
  • JavaScript中的构造函数可以类比于OO语言中的“类”,写法的确类似,但和真正OO语言还是有本质不同,JS有和其他OO语言完全不同的、特有的原型特性。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值