首页 > 解决方案 > 使用 object.defineProperty 或 reflet.defineProperty 后对象属性未定义

问题描述

我有一个对象,使用defineProperty方法后,我定义的属性丢失了。为什么?

    let obj = {
        name:'john',
        age:28
    }
    
    Reflect.defineProperty(obj,'name',{
        get(){
            return this._name
        },
        set(value){
            this._name = value
            return true
        }
    })
    
    console.log(obj)  // output: {age:28}
    console.log(obj.name)  // output: undefined

标签: ecmascript-6

解决方案


推荐阅读