js访问器属性

访问器属性不包含数据值:它们是一对儿getter和setter函数但是这两个函数不是必需的;读取访问属性时候会用到getter函数用来返回有效的值,写入访问属性时候会用到setter函数用来传入新的值;访问属性有如下四个特点:1、[[Configurable]]:表示能否通过删除属性的特性来重新定义一个新的属性;而对于直接在对象上定义的属性,这个特性默认为true;
2、[[Enumerable]]:表示通过for-in循环返回属性,对于直接定义的属性,默认值为ture;
3、[[Get]]在读取属性时调用函数,默认值是undefined;
4、[[Set]]在写入属性时调用函数,默认值是undefined;
访问属性不能直接定义,必须使用Object.defineProperty()来定义。

你可能感兴趣的:(js访问器属性)