你的位置:首页 > 软件开发 > Java > js 中对象属性的特性

js 中对象属性的特性

发布时间:2016-02-13 21:00:06
数据属性:数据属性包含一个数据值的位置,在这个位置可以读取和写入值。4个描述的行为特性:writable 表示能否修改属性的值。默认为trueEnumerable 表示能否过过for in循环返回属性是否可以枚举。configuralbe 表示是否能过来delete删除属性 ...

数据属性:

数据属性包含一个数据值的位置,在这个位置可以读取和写入值。

4个描述的行为特性:

writable  表示能否修改属性的值。默认为true

Enumerable 表示能否过过for in循环返回属性是否可以枚举。

configuralbe 表示是否能过来delete删除属性从来重新定义属性,能否修改其配置。

value 包含这个属性的数据值。读取属性值的时候,从这个位置读取。

        写入属性值的时候,把新值保存在这个位置。这个特性的默认值为true。

 1 <script> 2   function Foo(){} 3   Foo.prototype.z = 3 4   var obj = new Foo() 5   obj.x = 1 6   alert("x" in obj)  //=>true x是obj对象的自有属性 7   alert("z" in obj)  //=>true z是obj原型上继承来看属性 8   //hasOwnProperty 必须是对象上的自有的属性才返回true 9   alert(obj.hasOwnProperty("x"))  //true x是obj对象上的自有属性10   alert(obj.hasOwnProperty("z"))  //false z是obj原型上继承来的属性,不是他的私有属性11   alert(Foo.prototype.hasOwnProperty("z")) //=>true z是原型上自有的属性,所以返回true12   alert(Object.prototype.hasOwnProperty("toString"))//=>toString 是顶级对象上的自有属性,所以返回true13   //prpertyisEnumeralbe 的意思是必是对象上的自有属性而且要以是枚举的,但是对象的可枚举属性Enumeralbe是true,才能返回true14   alert(obj.propertyIsEnumerable("x"))  //true x是obj对象上可枚举的属性15   alert(obj.propertyIsEnumerable("z"))  //false z是obj原型上的属性,不是自有属性,则不可以枚举16   alert(Foo.prototype.propertyIsEnumerable("z")) //true x是原型上的自有属性,所以可以枚举17 </script>

原标题:js 中对象属性的特性

关键词:JS

JS
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。