位置: 编程技术 - 正文

javascript中类的定义方式详解(四种方式)(javascript 类)

编辑:rootadmin

推荐整理分享javascript中类的定义方式详解(四种方式)(javascript 类),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript中类的继承的关键字,js类class的作用,js类名,js类名,javascript中类的继承的关键字,js中的类是什么,js中的类是什么,javascript中类的继承,内容如对您有帮助,希望把文章链接给更多的朋友!

本文实例讲述了javascript中类的定义方式。分享给大家供大家参考,具体如下:

类的定义包括四种方式:

1、工厂方式

定义了一个能创建并返回特定类型对象的工厂函数, 看起来还是不错的, 但有个小问题 ,

每次调用时都要创建新函数 showColor,我们可以把它移到函数外面,

在工厂函数中直接指向它

这样避免了重复创建函数的问题,但看起来不像对象的方法了。

2、构造函数方式

可以看到与第一中方式的差别,在构造函数内部无创建对象,而是使用 this 关键字。

javascript中类的定义方式详解(四种方式)(javascript 类)

使用 new 调用构造函数时,先创建了一个对象,然后用 this 来访问。

这种用法于其他面向对象语言很相似了, 但这种方式和上一种有同一个问题, 就是重复创建函数。

3、原型方式

首先定义了构造函数 Car,但无任何代码,然后通过 prototype 添加属性。优点:

a. 所有实例存放的都是指向 showColor 的指针,解决了重复创建函数的问题

b. 可以用 instanceof 检查对象类型

缺点,添加下面的代码:

drivers 是指向 Array 对象的指针,proCar 的两个实例都指向同一个数组。

4、动态原型方式

这种方式是我最喜欢的, 所有的类定义都在一个函数中完成, 看起来非常像其他语言的类定义,不会重复创建函数,还可以用 instanceof

希望本文所述对大家JavaScript程序设计有所帮助。

JavaScript判断对象是否为数组 文中为大家分享了三种JavaScript判断对象是否为数组的方法,1.typeof首先我们会想到的是使用typeof来检测数据类型,但是对于Function,String,Number,Undefined等这

js实现C#的StringBuilder效果完整实例 本文实例讲述了js实现C#的StringBuilder效果。分享给大家供大家参考,具体如下:/*#####################DONOTMODIFYTHISHEADER######################Title:StringBuilderClass##Desc

JS控制按钮秒钟后可用的方法 本文实例讲述了JS控制按钮秒钟后可用的方法。分享给大家供大家参考,具体如下:scriptlanguage="javascript"functionstart(){document.getElementById("Button1").disabled=t

标签: javascript 类

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

上一篇:JS设置下拉列表框当前所选值的方法(js下拉框怎么设置)

下一篇:JavaScript判断对象是否为数组(js对象判断)

  • 公司车船使用税会计分录
  • 什么是一般业务
  • 销售货物开票及销售收入
  • 普票也要盖发票专用章吗
  • 债权投资借贷方
  • 一般纳税人10万以下免什么税
  • 取得租金收入的会计分录
  • 老板投入资金入什么科目
  • 公司股票卖出会计处理
  • 修理厂专票怎么开
  • 小微企业资质证书
  • 建筑业小规模纳税人税率是3%还是5%
  • 售后维修服务会计入账方式
  • 行政事业单位会计科目一览表
  • 多交的增值税附加税怎么做账
  • 个人所得税代扣代缴的适用范围
  • 融资租入固定资产计提折旧吗
  • 制造业企业存货管理论文
  • 事业单位坏账怎么处理
  • mac怎么禁止开机启动
  • 电脑开wifi给手机用好吗
  • 资本公积和盈余公积都是从企业的净利润中提取的
  • 如何把私人账户冻结
  • 合并报表抵消分录实例
  • linux deepin怎么样
  • 预缴附加税款会退税吗
  • PHP:xml_set_default_handler()的用法_XML解析器函数
  • php和c++的区别
  • 右键新建菜单中没有文本文档怎么办
  • 蚊子咬了怎么消肿止痒最快红霉素软膏
  • 穿墙路由器怎么选择
  • 最贵的冰箱是多少钱
  • 股票溢价发行是什么意思
  • 母子公司吸收合并税务处理
  • php怎么将数据库中的数据显示出来
  • php二维数组去重函数
  • 瑞吉接送
  • discuz怎么添加diy模块
  • 缴纳税款滞纳金会计处理
  • 长期借款的处理原则
  • 什么是企业管理的首要职能
  • 申请一般人纳税需要什么东西
  • 生产车间的辅助记录
  • 应税货物销售额含税吗
  • 自产和外购用于赠送
  • mysql主从配置详解
  • 残疾人开公司要交税吗
  • 2023年终奖一次性扣税对照表
  • 企业资金如何运动
  • 商业承兑到期对方不付款会计分录
  • 收到联营单位投入的设备一台
  • 其他业务收入在利润表中怎么填写
  • 支票取钱不是本人要带什么
  • sql server 导出
  • mysql 5.7.22安装教程
  • 播放windows xp
  • ubuntu zed
  • unix系统的文件分为哪三种存取结构
  • 怎么删除服务器管理的服务
  • win8开始在哪里
  • win10系统d盘变成e盘,进入winpe盘符正常
  • vim 多窗口启动以及相互切换
  • unix和linux是使用较为广泛的多用户交互
  • window8输入法怎么设置
  • win7安全模式
  • win8分屏快捷键
  • win8安装ie11
  • windows右键不能用了
  • unity 3d数学
  • shell中管道的作用
  • linux与windows
  • node-js
  • 在Unity中使用事件/委托机制(event/delegate)进行GameObject之
  • json convert
  • 税务案件移送案件的法律条款
  • 福建地方税务局招聘
  • 西安国家税务局官网首页
  • 广东省电子税务局app
  • 深圳国税app官方下载
  • 兰州税收优惠园在哪
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设