位置: 编程技术 - 正文

javascript创建对象、对象继承的实用方式详解(js创建对象的方法有哪些)

编辑:rootadmin

推荐整理分享javascript创建对象、对象继承的实用方式详解(js创建对象的方法有哪些),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript创建对象的三种方法,javascript中创建对象的三种方法,创建javascript对象,javascript创建对象的三种方法,JavaScript创建对象数组,JavaScript创建对象数组,javascript创建对象的几种方法,javascript创建对象的几种方法,内容如对您有帮助,希望把文章链接给更多的朋友!

本文约定:不特殊声明的情况下,属性代指属性或方法。

创建对象、对象继承实际上是一回事:我们所需要的实例对象通过构造函数获得私有属性、通过原型链获得共享的属性。什么是好的方式?私有属性通过构造函数的方式获得(不考虑实例中自定义私有属性)且不需要重写,共享属性通过原型链找到且不需要重复创建。

普适的方式

组合使用构造函数模式和原型模式创建对象

通过字面量的方式会重写prototype,且原型的constructor指向了Object,必要的情况下需要重新定义constructor。

寄生组合式继承

object()的作用:将作为参数传入的对象变成实例的原型,该对象的属性被所有实例共享。

共享属性:inheritPrototype(Student_, HNU_student);,子构造函数原型成为超构造函数原型的一个实例,超构造函数原型中的属性共享给子构造函数。私有属性:HNU_student.call(this, name);,通过子构造函数创建实例时调用超构造函数创建私有属性。

创建对象的其他方式

动态原型模式

javascript创建对象、对象继承的实用方式详解(js创建对象的方法有哪些)

将定义在原型中的共享属性放入构造函数中,使用判断语句,在第一次调用构造函数创建实例时,初始化原型共享属性。

寄生构造函数模式

用于为原生构造函数添加特殊的属性。

对象继承的其他方式

组合继承

共享属性:Student_.prototype = new HNU_student();,子构造函数的原型就指向了超构造函数的原型,实例通过原型链找到所有共享的属性。私有属性:HNU_student.call(this, name);,通过子构造函数创建实例时调用超构造函数创建私有属性。

缺陷:超构造函数被调用了两遍。Student_.prototype = new HNU_student();的同时,在子构造函数原型中创建了超构造函数定义的私有属性,这些原型中的私有属性被实例中的同名属性覆盖屏蔽。

原型式继承、寄生式继承

Object.creat()是ECMAScript5新增的方法,接受两个参数:一是作为原型的原对象,二是重写或新增属性的对象,作用与自定义的object()相同。

寄生式继承在原型式继承的基础上添加了额外的属性用来增强对象。

原型式继承和寄生式继承用于创建与已有对象类似的实例对象。

javascript事件绑定学习要点 事件绑定分为两种:一种是传统事件绑定(内联模型,脚本模型),一种是现代事件绑定(DOM2级模型)。现代事件绑定在传统绑定上提供了更强大更方

javascript中call apply 与 bind方法详解 在JavaScript中,call、apply和bind是Function对象自带的三个方法,本文将通过几个场景的应用,来详细理解三个方法。call()call()方法在使用一个指定的this值和

JavaScript中setTimeout和setInterval函数的传参及调用 如何向setTimeout、setInterval传递参数看如下代码:varstr='aaa';varnum=2;functionauto(num){alert(num);}setTimeout('auto(num)',);这样写是可以正常工作的,但是如其说这

标签: js创建对象的方法有哪些

本文链接地址:https://www.jiuchutong.com/biancheng/369985.html 转载请保留说明!

上一篇:JavaScript中将数组进行合并的基本方法讲解(javascript中的数字型可以用来保存整数或浮点数(小数))

下一篇:javascript事件绑定学习要点

  • 广告宣传费扣除比例
  • 价外费用是含税价还是不含税价
  • 跨月冲红的发票怎么做会计分录
  • 支付给个人的佣金费用需要发票吗
  • 百望云票收费吗
  • 员工超过万人公司
  • 法人把自己的车租给公司交什么税
  • 买卖金融商品应交增值税计算
  • 增值税的简易计税是什么意思
  • 在建工程账务处理流程
  • 英国租金收入所得税
  • 公户转私户的钱几天能到账
  • 房地产开发资质管理办法
  • pos刷的钱能追回吗
  • 补缴所得税要调账吗
  • 购买投资理财产品放的会计处理怎么做?
  • 企业所得税收入是什么意思
  • 所得税的费用限额怎么算
  • 物业管理费属于政府购买服务吗
  • 上报汇总是什么时候
  • 委托加工怎么计算消费税
  • 不动产进项税额转出分录
  • 卖护肤品赚钱吗
  • 单位给个人付款分录
  • 公司对项目的资金支持
  • 小规模企业税务简易注销
  • 潽金融资租赁有限公司
  • mac系统如何切换大小写
  • 腾讯手游助手遇到未知错误
  • 暂估成本的会计处理
  • 收到厂家赠送的产品
  • 软碟通支持uefi吗
  • 预付款挂账什么意思
  • mac更新内容
  • 若依框架是谁写的
  • 什么是原始凭证?审核原始凭证主要审查哪些内容?
  • php判断两个给定值相同
  • 前端开发csdn
  • php类的使用
  • PHP:imageistruecolor()的用法_GD库图像处理函数
  • 法国西南部城市
  • 对外支付佣金需要扣缴所得税吗
  • 微信小程序开发零基础入门
  • 知识产权专利费包括哪些费用
  • centos php7.4
  • 用chatgpt写insar地质灾害的论文,重复率只有1.8%,chatgpt4.0写论文不是梦
  • object.assign(this.$data, this.$options.data())
  • php dirname函数
  • 分公司可以开基本账户吗
  • 出口免税税务备案流程图
  • 进项税转出金额是发票上的哪个
  • 织梦模板改成帝国模板
  • 劳务派遣工资是死的吗
  • 社保滞纳金所得税
  • 金融商品转让一半增值税
  • 市政绿化工程的施工方案
  • 厂房房租发票
  • 同一控制下的长投入账价值按什么计算
  • 不确认销售收入的原因
  • 跨年度冲红字发票账务处理
  • 应收票据背书转让分录
  • 佣金如何做账分录
  • 设备投入安装会计分录怎么写
  • 从银行提取现金分录
  • 营业收入影响资产负债表哪些项目
  • 营改增账务处理实例
  • 固定资产处置有什么问题
  • mysql5717安装及配置超详细教程
  • pe系统找不到系统
  • windows8出现蓝屏
  • 如何将windows 7升级到windows 10
  • 惠普装xp系统
  • Android计算器项目代码
  • Android之framework修改底部导航栏NavigationBar动态显示和隐藏
  • 原生js常用的方法
  • django 表单
  • jQuery基于$.ajax设置移动端click超时处理方法
  • 湖南省低保电话是多少?
  • 怎么注册山东省电子税务局
  • 车辆保险代收车船税会计分录
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设