如何让console.log输出getter结果而不是字符串“[Getter/Setter]”?

2024-01-09

在此代码中:

function Cls() {
    this._id = 0;
    Object.defineProperty(this, 'id', {
        get: function() {
            return this._id;
        },
        set: function(id) {
            this._id = id;
        },
        enumerable: true
    });
};
var obj = new Cls();
obj.id = 123;
console.log(obj);
console.log(obj.id);

我想获取 { _id: 123, id: 123 } 但我得到了 { _id: 123, id: [Getter/Setter] }

有没有办法让 console.log 函数使用 getter 值?


您可以使用console.log(Object.assign({}, obj));

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何让console.log输出getter结果而不是字符串“[Getter/Setter]”? 的相关文章

随机推荐