JS三座大山之原型链 (附原型链的应用)

本文探讨了面向对象的三大特征,重点讲解了原型继承和原型链的概念。原型继承是通过将父对象作为子对象构造函数的原型来实现成员共享。原型链是由每个函数的原型对象形成的链式结构,通过就近原则来访问对象及其原型的属性和方法。此外,文章还介绍了`instanceof`关键字用于检测对象的原型链,以及如何利用它来进行类型检查。最后,提到了`arguments`、`rest`参数和函数默认参数等实用特性,并给出封装模态框的案例。
摘要由CSDN通过智能技术生成

面向对象的三个特征:

1 封装 把代码放到对象的方法中

2 继承 一个对象 拥有另一个对象的所有成员

3 多态 一个对象在不同情况下不同状态


原型继承:

继承 : 一个对象 拥有 另一个对象 所有的 成员

原型继承 把父元素 作为子对象构造函数 的原型


原型链:

什么是原型链?

每一个函数都有原型,而原型也是对象,也会有自己的原型,依次类推形成链式结构,称之为原型链

  • 对象访问原型链的规则: 就近原则   
  • 对象先访问自己的,自己没有就找原型的,原型没有就找原型的原型,一直到原型链终点null.如果还找不到。  属性则获取undefined, 方法则会报错 xxx is not function


关键字:

  • instanceof(关键字) : 运算符 .用于检测 构造函数的 prototype在不在实例对象的原型链中,
  •  说人话: 亲子鉴定,鉴定两个对象之间有没有血缘关系
  • 实例对象 instanceof 构造函数  检测 右边构造函数的prototype 在不在 左边实例对象的原型链       
  • 应用 :  某些函数为了限制你的数据类型,在内部需要用instanceof进行判断是否是正确的数据类型

arguments :获取函数所有实参

rest : 获取函数剩余的所有实参

函数默认参数 function 函数名(形参=默认值){}

案例   封装模态框   

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="view
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值