JavaScript 定义属性
■知识点
在对象直接量中,属性名与属性值之间通过冒号分隔,冒号左侧是属性名,右侧是属性值,名值对(属性之间通过逗号分隔。另外,也可以使用点语法定义属性。
使用Object.defmePropertyO函数可以为对象添加属性,或者修改现有属性。如果指定的属性名在对象中不存在,则执行添加操作;如果在对象中存在同名属性,则执行修改操作。
具体用法如下:
Object.defineProperty(object, propertyname, descriptor)
参数说明如下。
object:指定要添加或修改属性的对象,可以是JavaScript对象或者DOM对象。
propertyname:表不属性名的字符串。
descriptor:定义属性的描述符,包括对数据属性或访问器属性。
Object.defineProperty返回值为己修改的对象。
使用Object.defineProperties()函数可以一次定义多个属性。具体用法如下:
object.defineProperties(object, descriptors)
参数说明如下。
object:对其添加或修改属性的对象,可以是本地对象或DOM对象。
descriptors:包含一个或多个描述符对象。每个描述符对象描述一个数据属性或访问器属性。
■实例设计
【示例1】在下面的示例中,使用直接量方法定义对象obj,然后添加了两个属性,一个是属性,另一个是方法。
var obj = { //定义对象
x:l, //属性
y: function () { //方法
return this.x + this.x;
}
}
【示例2】通过点语法,可以在构造函数内或者对象外添加属性。
var obj = {} //定义空对象
obj.x = 1; //定义属性
obj.y = function。{ //定义方法
return this.x + this.x;
}
点击加载更多评论>>