浅谈对Js面向对象的理解(1)

    面向对象的语言有一个标志,那就是它们都有类的概念,通过类来创建任意多个具有相同属性和方法的对象。它是一种程序开发的方法,它将对象作为程序的基本单元,将逻辑和数据封装其中,以提高代码的灵活性、重用性和扩展性。对象是把数据及对数据的操作方法放在一起,作为一个相互依存的整体。简单的来说,就是很多属性放在集合中,而集合中的属性属性值一一对应,属性属性值也就是我们平时所说的键值对,其中键值可以是数据或函数。

它的属性类型包括 1.数据属性 2.访问器属性 其中数据属性包括以下四个,我们最常见的应该就是Value 了。 

Configurable:表示能否通过 delete 删除属性从而重新定义属性,能否修改属性的特性,或者能否把属性修改为访问器属性。像前面例子中那样直接在对象上定义的属性,它们的这个特性默认值为 true。

Enumerable:表示能否通过 for-in 循环返回属性。像前面例子中那样直接在对象上定义的属性,它们的这个特性默认值为 true。

Writable:表示能否修改属性的值。像前面例子中那样直接在对象上定义的属性,它们的这个特性默认值为 true。

Value:包含这个属性的数据值。读取属性值的时候,从这个位置读;写入属性值的时候,把新值保存在这个位置。这个特性的默认值为 undefined。

然后再来说下访问器属性

Configurable:表示能否通过 delete 删除属性从而重新定义属性,能否修改属性的特性,或者能否把属性修改为数据属性。对于直接在对象上定义的属性,这个特性的默认值为true。

Enumerable:表示能否通过 for-in 循环返回属性。对于直接在对象上定义的属性,这个特性的默认值为 true。

Get:在读取属性时调用的函数。默认值为 undefined。
Set:在写入属性时调用的函数。默认值为 undefined。

 

猜你喜欢

转载自www.cnblogs.com/wpf2lhy/p/9940109.html