位置: 编程技术 - 正文

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对象判断)

  • 股票印花税怎么交
  • 增值税先征后退会计处理
  • 一般纳税人提供服务税率
  • 处置固定资产亏了怎么做账
  • 会计分录的含义及三要素
  • 银行存款对银行的作用
  • 加油票怎么记账凭证
  • 子公司分红对合并报表的影响
  • 进项税加计扣除什么时候开始的
  • 铸造厂的销售废料有哪些
  • 劳务公司发放农民工工资的三种形式
  • 对方开票怎么做账务处理
  • 公司筹建期间
  • 老师课时费计入什么科目
  • 固定资产清理先提折旧再清理吗
  • 新建厂房房产证办理流程
  • 退休返聘人员被辞退未提前通知能要求多付一个月工资吗
  • 外贸 内销
  • 设备销售并负责安装税率是多少
  • 定额发票使用年限规定
  • 资产处置税务风险有哪些
  • 提前收取租赁收入的财务处理
  • 房产税应当计入什么科目
  • 企业的其他业务收入包括
  • 上月销项税额错了怎么修改凭证?
  • 营业成本包括哪些会计科目
  • 融资租赁增值税优惠政策
  • 融资性售后回租承租方为什么不交税
  • mac怎么连接校园网网线
  • win10如何禁用administrator用户
  • tp link无线路由器设置
  • 结转本期损益要过账吗
  • linux grub
  • php session_start
  • 再次研究下cache_lite
  • php调用sql
  • vue浏览器版本
  • 圆顶亭效果图
  • 利用漏洞每天获利万元
  • 汇总开具发票
  • 为什么税前利润加可抵扣暂时性差异
  • 两套账目
  • 代开增值税额与实际缴款额差一分钱如何入账
  • imu定位
  • springboot jni
  • 归还长期借款会计分录例题
  • 未缴纳的出资款怎样清算
  • 微信转账和支付宝转账的区别
  • 帝国cms扣除会员怎么办
  • 将织梦dedecms转换到wordpress
  • 服装加工税率是13%还是16%
  • 支付对价的公允价值的处理
  • 新会计准则里的机械作业是什么
  • 固定资产每月计提还是每年计提
  • 其他所得
  • 考证交社保是怎么回事
  • 小规模公司购买汽车会计分录
  • 如何计提营业税
  • 税务局代开的增值税专票可以红冲吗?
  • 三代手续费企业所得税
  • 建账时应考虑的问题包括下列哪三项
  • sql server browser被禁用
  • sql server数据存放位置
  • win10系统资源
  • win7打开文件夹都是独立的窗口
  • flash插件app
  • cocos2d怎么用
  • webrtc opus
  • 如何用jquery
  • css要学到什么程度
  • Div CSS absolute与relative的区别小结
  • js模拟用户输入
  • 细说javascript
  • 举例详解民法典第502条
  • 浅谈JavaScript事件的属性列表
  • 遍历字符串python
  • python3 functools
  • 2020年上海税务跨区迁移很麻烦吗
  • 与税务有关的公需课
  • 新市税务所电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设