Javascript 属性总结

在 Javascript 语言中,对象、类、元素都有自己的属性。Javascript 是一种非常灵活的语言,声明或创建属性有多种方式,这里整理一下 Javascript 中属性的创建或声明方式。

动态为已有对象添加属性

这里的对象指已经实例化的对象,包括内存对象 Object、函数、元素、全局对象比如 document。为对象添加属性,只要直接赋值就好。

这样就为这个已经存在的对象添加了一个额外的属性,这个属性值可以在使用中再次修改。但是这个属性只针对这个已经创建的实例对象,如果为对象所属的类都添加属性,该怎么办?

为类添加属性

比如为所有 DIV 元素添加一个新的实例属性,可以使用原型添加。

注意原型类不建议添加引用类型的属性,如数组、对象等。否则所有实例对象共享这一个值,这和静态属性没什么两样。静态属性可以直接在类名上添加。

如果为类添加可以有 getter 和 setter 逻辑的属性,可以用Object.definePropertyObject.defineProperties方法。

因为必须有一个地方保存这个属性的值,所以用了自定义标签属性。

在 Javascript 中,有一个每一个对象都有的属性,叫hasOwnPrperty,用于判断属性是不是原生属性。

Object.defineProperty方法本质是也是为原型添加属性,所以用这个方法添加的属性都不是原生属性,只有在类中定义的属性才是原生属性,

在类中定义属性

在 Javascript 类定义属性的方式也有好几种,先看代码,然后分别解释。

各个属性变量的解释如下:

属性名命名规则

其实没什么可重点强调的,跟变量的规则是一样的,只能包含英文字母、数字、下划线_和美元符号$,而且不能以数字开头。更多变量的问题请参照上一篇笔记

(本文完)


微信公众号
码农老吴  |  星源工作室  |  开发月志  |  问题反馈
联系我们:wu@qross.io     手机/微信:18618171102
京 ICP 备 20027445 号
$(h1)!