@强迫症福音:函数整理成类的5个原因( 二 )
本文插图
图源:unsplash
为何防止突变如此重要?当数据的形状无法更改时 , 它将在代码的函数上产生高度的确定性——使其在方法上更具功能性 , 并减少了在其他地方使用该对象时潜在的副作用 。
本文插图
一切基于对象
JavaScript是基于原型的思想构建的 。 这意味着您的代码以单个全局作用域开始 , 该作用域分解为更小的环网作用域 , 也可以分解为更小的作用域 。 图表形式如下所示:
本文插图
属性从父级继承到子级
因此 , 当位于链下游的某个对象想要某物时 , 它会向其父对象索要 。 如果父级没有 , 则该进程将继续沿链向上运行 , 直到找到或返回未定义的进程为止 。
独立函数则没有这种能力 , 因为它没有遍历属性的链 。 函数本质上位于窗口对象上 , 只能访问全局作用域 。
为什么不将所有内容都设置为全局范围?
由于您不需要遍历所有的值 , 一旦用JavaScript声明了全局作用域 , 大多数情况下它不会消失 。 如果附加到该变量的数据相当大 , 则会由于内存空间不足而降低应用程序的速度和高效处理事物的能力 。
本文插图
将函数容器化、模块化
任何东西都有可能模块化 。 实用模块化与逻辑推理和特定想法的紧密程度有关 。 任何人都可以说其代码是模块化的 。 你可以把你的代码放在一个函数里 , 然后指出它的模块化特征 。
然而 , 当使用“类”时 , 您将系统地使用强制结构和内聚思想来处理模块化 。 从本质上讲 , 您是在对代码进行容器化并整理其功能 , 从而实现系列相关特性 。
因为这就是“类”的方法——基于它们所执行函数的集合 。
本文插图
JavaScript面向对象
JavaScript是一种具有动态类型的多范式语言 。 多范式意味着它不仅仅局限于单一的意识形态来构建逻辑 。
本文插图
图源:unsplash
这意味着JavaScript不是纯功能 , 也不是纯面向对象 。 它是一种语言 , 允许您混合使用并匹配编写、组织代码的方法 , 从而灵活地适应逻辑需求和条件 。
JavaScript面向对象的设计特性遵循基于原型的方法 , 这意味着可以使用类进行继承 。 JavaScript使用函数方法和对象构造 , 这意味着将函数特性和功能整合到类中是以一种相互关联的方式进行逻辑排列和业务规则介绍 。
本文插图
小结
将相关函数整合于类并将其转换为显式的面向对象模式 , 有助于提高代码的模块性和长期重复使用率 。
与尝试跟踪作用域和继承相比 , 在不同代码段之间设立的清晰边界和现有关系也可以更快地识别问题区域和逻辑缺陷 。
所以 , 不是所有代码都必须是“类” , 但很多编写的代码应该是“类” 。
本文插图
留言点赞关注
我们一起分享AI学习与发展的干货
如转载 , 请后台留言 , 遵守转载规范
推荐阅读
- 李兆香|用rept函数给客户进行自动五星级评定
- Excel函数与VBA实例|向左查询只会vlookup函数就out了,这两组函数公式效率更高
- 科技金属肖|变形金刚迷的超级福音!iQOO 3变形金刚限量版即将开售
- 小亚爱科技|OPPO发布福音战士限定版,魅族也发布了一款山东舰定制版
- 手机|OPPO Ace2 新世纪福音战士限定版评测
- |最前线丨福音战士又有联名,与OPPO合作推出ACE2定制款
- |连卡针都不放过的深度定制,OPPO Ace2 新世纪福音战士限定版正式发布
- 「」IF函数这样用,还不会的打屁屁
- 材料material顶级论文:盲人的福音?神奇钙钛矿,助力高质量人造眼睛
- 互联网圈里人微信黑暗模式强迫症人士有救了,微信更新,允许用户手动选择开关
