15621857753

JS中关于Object.defineProperty()的重要说明

来源:齐鲁建站 栏目:开发教程 阅读: 日期:2023-11-20

本文介绍了JS中关于Object.defineProperty()的重要说明,关于Object.defineProperty()的常用且重要的几点说明,这在学习VUE时要用到的知识点,一定要掌握了。

下面来说说JS中关于Object.defineProperty()的重要说明

直接上代码说明:

<script>

    let number = 18

    let person = {

        name: '张三',

        sex: '男',

    }

 

    // 在 person 中加入 age:18 属性

    Object.defineProperty(person, 'age', {

        value: 18,

        enumerable: true, // 控制属性是否可以枚举(也就是遍历),默认是false

        writable: true, // 控制属性是否可以被修改,默认是false

        configurable: true // 控制属性是否可以被删除,默认是false

 

        // 当有人读取person的age属性时,get函数(也就是getter)就会被调用,且返回值就是age的值

        get() {

            console.log('有人读取age属性了');

            return number

        },

 

        // 当有人修改person的age属性时,set函数(setter)就会被调用,且会收到修改的具体值

        set(value) {

            console.log('有人修改了age属性,且值是', value);

            number = value

        }

    })

    console.log(person)

</script>

展开