0
点赞
收藏
分享

微信扫一扫

JavaScript对象之属性标签

本文介绍一下js对象的属性标签(configurable、writable、enumerable、value、get、set)的使用。

JavaScript对象之属性标签_JavaScript

上图的要点为:

1.Object.getOwnPropertyDescriptor(obj,attr)可以获取属性标签的信息。

2.configurable控制属性是否可配置,writable控制属性是否可直接修改,enumerable控制属性是否可被枚举出来。

JavaScript对象之属性标签_赋值_02

上图中Object.keys(person)不会输出不能被枚举的对象属性。

JavaScript对象之属性标签_面向对象_03

上图的要点为:

1.使用Object.defineProperties可定义对象的多个属性。

2.未设置的属性标签的默认值是false。

JavaScript对象之属性标签_js对象_04

上图通过重写promote属性的setter,使得当给promote赋值为2后,人的工资发生改变。感觉像Java的面向对象中的类。

这里的get和set的语法和​​JavaScript对象之get/set方法​​中的语法略有不同,但是其实本质是一样的。

JavaScript对象之属性标签_面向对象_05

上图的要点为:

1.writable只限制了能否直接赋值。

2.configurable为false依然能直接修改属性的值。

3.若writable和configurable都是false,则无法进行属性的修改。


举报

相关推荐

0 条评论