javascript面向对象的程序设计之Object.getOwnPropertyDescriptor()

Object.getOwnPropertyDescriptor()用于获取给定属性的描述信息,这个描述信息是一个对象.

如果是访问器属性,则这个对象的属性有configurable,enumerable,get,set.

如果是数据属性,则这个对象属性有,configurable,enumerable,writable,value.

 1  var human = {
 2         _age:18,//下划线是一种常用的记号.用于只能通过对象方法访问的属性
 3         role:"大人"
 4     };
 5     Object.defineProperty(human, "age", {
 6         get: function () {//放回age属性值
 7             return this._age;
 8         },
 9         set: function (ageValue) {//设置对象中的属性值
10             if (ageValue >= 18)
11                 this.role = "大人";            
12             else
13                 this.role = "小孩";
14         }
15     });
16     var descriptor = Object.getOwnPropertyDescriptor(human, "_age");//访问数据属性
17     alert(descriptor.value);//18
18     alert(descriptor.configurable); //true
19     alert(typeof descriptor.get);//undefined
20     descriptor = Object.getOwnPropertyDescriptor(human, "age");//访问访问器属性
21     alert(descriptor.value);//undefined
22     alert(descriptor.enumerable);//false
23     alert(typeof descriptor.get);//function

javascript面向对象的程序设计之Object.getOwnPropertyDescriptor(),古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。