课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
JavaScript编程开发是程序员在学习软件开发的时候需要重点掌握的一个编程语言,而今天我们就一起来了解一下,JavaScript的对象特征都有哪些类型。
1、状态与行为
对不同的语言来说,状态和行为会使用不同的描述:
C++中的“成员变量”和“成员函数”
Java中的“属性”和“方法”
而在JS中,状态和行为统一抽象成了属性(函数也是一种特殊的对象)。
2、JS对象的独有特色
但为什么很多人说“JS不是面向对象”的呢?因为JS的对象设计有其独有的特点,那就是:
对象具有高度的动态性,因为JS能在运行时被修改状态和行为。
3、JS的属性
JS为了提高抽象能力,将属性设计成了(比别的语言)更加复杂的形势,提供了数据属性和*访问器属性*两类。也就是说,JS的属性并非简单的名称(键)和值,而是用了一组attribute(特征)来描述property(属性)。
4、数据属性
数据属性类似其他语言的“属性”,具有四个特征。
属性的值:value
能否赋值:writable
能否被(如forin)枚举:enumerable
能否被更新(改变或删除):configurable
虽然,我们通常只关系值。
5、访问器属性
也就是getter/setter属性,它也有四个特征。
取值时调用:getter
设置时调用:setter
能否被(如forin)枚举:enumerable
能否被更新(改变或删除):configurable
也就是说,读和写的时候,访问器属性可以执行代码,让读和写得到完全不同的值,可以看作一种函数的语法糖。
6、特殊却普通
正如我们前面说到的:
任何语言的运行时,类的概念都会被弱化。
因此JS可以模仿多数面向对象编程范式,比如基于原型,甚至基于类。也正因此,JS是正如其语言标准所说的:JS是一门面向对象的语言。
既然这样,我们就不要机械地用JS来模仿其他语言,充分利用它的高度动态性的属性集合这一对象系统,挖掘它的能力吧。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请在707945861群中学习了解。