JavaScript中如何操作属性

2018-08-25  本文已影响0人  一甘烈酒

一、什么是属性

属性是对象得一部分。属性包括属性名和属性值。属性名可以是包含空字符串在内的任意字符串,但对象中不能存在两个同名的属性。值可以是任意JavaScript值。除了属性名和属性值之外,每个属性还有一些相关的值,称为属性特性:

a.可写(writable):表明是否可以设置该属性的值;b.可枚举(enumerable):表明是否可以通过for/in循环返回该属性;c.可配置(configurable):表明是否可以通过删除或修改该属性。

二、定义属性

使用冒号可以为对象定义属性,冒号左侧是属性名,右侧是属性值。属性与属性之间通过逗号运算符进行分隔。

定义对象中的属性

在ECMAScript5 中增加了两个静态函数,可以修改和添加指定对象的属性:Object.defineProperty和Object.defineProperties。

1.Object.defineProperty函数介绍

Object.defineProperty可以将属性添加到对象,或者修改现有属性。具体用法如:

Object.defineProperty(object,propertyname,descriptor)

利用该函数设置属性

2.Object.defineProperties函数介绍

如果要将多个属性添加到对象或者要修改多个属性,可以使用该函数,Object.defineProperties(object,descriptors).例如:

三、访问属性

1.访问属性

一般在JavaScript中可以通过点运算符访问属性,点运算符的左侧是对象引用的变量,右侧是属性名,属性名必须是一个标识符。(注意:如果读取不存在的属性时,不会抛出异常,而是返回undefined)。ES5中提供了四种方法:Object.getPrototypeOf、Object.getOwnPrototypeDescriptor、Object.getOwnPrototypeNames、Object.keys.我们以第一个函数为例:Object.getPrototypeOf能够返回对象的原型。如:

Object.getPrototypeOf函数

2.删除属性

使用delete运算符可以删除属性.var o = {x : 1}     delete   o.x ;    alert(o.x); //返回undefined。

总结:属性是对象的重要组成部分,属性的值可以是任意类型的数据。属性灵活,理解属性是理解JavaScript这种基于对象语言的重要基础。加油吧!少年。

上一篇下一篇

猜你喜欢

热点阅读