位置: 编程技术 - 正文

理解javascript封装(js封装是什么意思)

编辑:rootadmin

推荐整理分享理解javascript封装(js封装是什么意思),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript的理解,js封包,js 函数封装,javascript的理解,js封闭函数,javascript封装,javascript封装,js 函数封装,内容如对您有帮助,希望把文章链接给更多的朋友!

封装可以被定义为对对象的内部数据表现形式和实现细节进行隐藏。通过封装可以强制实施信息隐藏。

在JavaScript中,并没有显示的声明私有成员的关键字等。所以要想实现封装/信息隐藏就需要从另外的思路出发。我们可以使用闭包的概念来创建只允许从对象内部访问的方法和属性,来达到封装的要求。

基本方式一般来说,我们学用的有三种方法来达到封装的目的。

使用this.XXX来声明一个变量,然后再声明getXXX、setXXX等取值、赋值的方法。使用this._XXX来声明一个变量,然后再声明getXXX、setXXX等取值、赋值的方法。利用“函数作用域”这一个概念来做。1. 门户大开型

使用这种方法实现的封装,虽然实现了取值器与赋值器以保护私有属性。但是在实际使用中,私有属性依然可以从外部访问,所以从根本上讲,没有实现封装。

2. 用命名规范进行区别

使用这种方法与第一种类似,区别在于使用不同的命名来保护私有属性的使用。但是,从实际应用来说其仍然没有实现封装。

理解javascript封装(js封装是什么意思)

3. 使用函数作用域

由于在JavaScript的函数中声明的变量是有作用域的,所以使用这种方法可以避免在外部直接访问私有属性。基本达到封装所要求的内容。

这里要注意的是,我们在函数的内部,可以使用this.XXX以及var来声明变量。区别是使用this.XXX声明的变量在外部是可以访问的。使用var声明的变量,由于受到函数作用域的保护,在函数的外部是无法直接访问的。

4. 使用函数作用域的变形

这种方法是直接返回一个构造器的执行。且这里的构造器是一个内嵌函数。

这种方法的优点是“在内存中只会存在一份。因为其他静态方法被声明在构造器之外,所以它们不是特权方法。”

判断一个方法是否应该被设计为静态方法的原则是“这个方法是否会访问私有属性”。如果它不需要,那么将其设计为静态方法会更有效率,因为它只会被创建一份。

常量我们可以使用“只有取值器,没有赋值器”的方式来实现常量。

利弊1、利处

封装保护了内部数据的完整性;封装使对象的重构更轻松;弱化模块间的耦合,提高对象的可重用性;有助于避免命名空间冲突;……2、弊处

私用方法很难测试;必须与复杂的作用域链打交道,使错误调度更困难;容易形成过度封装;JavaScript并不原生支持封装,所以在JavaScript中实现封装存在复杂性的问题;

标签: js封装是什么意思

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

上一篇:学习Javascript面向对象编程之封装(javascript要学到什么程度)

下一篇:javascript每日必学之继承(javascript题)

  • 什么是企业增值税和所得税
  • 纳税人识别号在哪里能查到
  • 电子发票冲红是怎么回事
  • 费用会计具体工作总结
  • 异地经营如何纳税
  • 房地产公司支付工程款账务处理
  • 预付了订金收到发票怎么做分录?
  • 房地产开发公司注册条件
  • 应返还财政额度是什么科目
  • 借款合同印花税减免优惠政策
  • 劳动仲裁是怎样仲裁公司的
  • 小规模纳税人开具1%增值税专用发票可以抵扣吗
  • 注册资金印花税是资金账簿吗
  • 纳税人提供植物养护服务属于什么服务
  • 小规模的成本票
  • 公积金贷款利息现在是多少
  • 外汇扣税是多少钱啊
  • 资产负债率高说明长期偿债能力强吗
  • 公司公章丢失登报后又找到了
  • 个体户营业收入超过500万
  • 增值税清卡失败f50006
  • 银行增值税免税收入有哪些
  • 股金属于金融产品吗
  • Mac怎么禁用icloud
  • 金融资产有哪三类代码
  • 期末留抵税额退税额
  • 计提职工薪酬怎么算
  • 社保挂靠会计处理
  • PHP:Memcached::getDelayed()的用法_Memcached类
  • 出纳借方
  • 坏账损失税务处理
  • opencv训练模型教程
  • vue3安装配置
  • 事业单位结余资金管理办法
  • 来料加工企业的划分标准
  • 支付银行贷款利息现金流量表填哪里
  • 盈余公积企业所得税税率
  • 法律中的大额和小额规定
  • 以前年度应收账款错误如何调整
  • 异地预缴的企业所得税
  • 小企业固定资产入账标准
  • 验资费如何做账务处理
  • 负数发票开错了是否可以作废?
  • 如何理解会计的本质
  • 差旅费记入哪个费用
  • 企业营业外支出是什么意思
  • sqlserver数据库合并方法
  • mysql5.7.29安装
  • 压缩sql数据库
  • windows开发了多久
  • ubuntu20安装fcitx5
  • VMware虚拟机安装苹果Mac OS
  • 老毛桃u盘启动盘制作工具怎么安装win10系统 老毛桃u盘安装win10系统图文教程
  • ghost后恢复
  • win7旗舰版系统激活密钥
  • avgorange是什么文件
  • mac迁移助理是什么意思啊
  • 从此学会隐藏悲伤全文
  • WIN10更新WIN11卡在63%
  • linux删除一个非空子目录命令
  • win8.1 安装ie10
  • opengl画实体
  • JQuery 又谈ajax局部刷新
  • textview可以点击吗
  • 批处理在windows中的典型应用
  • javascript的
  • 用jQuery的AJax实现异步访问、异步加载
  • unity3d游戏开发标准教程pdf
  • python中计数函数怎么用
  • javascriptz
  • Python中的def
  • 河南网上税务申报步骤
  • 税务行业微信缴税项目是什么
  • 中国进口国外品牌排行榜
  • 湖南省税务局发票辨伪系统
  • 山东网上信访投诉平台
  • 云南地方税务局电话
  • 河北地税网上申报纳税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设