我试图通过以下方式向对象添加属性:
function methodA(client, page){
Object.defineProperty(client, 'name', {
value: page,
writable: true,
enumerable: true,
configurable: true
});
methodB(client)
}
当我在methodB中执行client.name
的控制台日志时,它返回undefined。有人能指出我做错了什么吗?我是JS的新手。
答案 0 :(得分:2)
为您的代码提供一些虚拟值,它似乎运行得非常好。错误必须在其他地方。运行代码段并查看:
function methodA(client, page){
Object.defineProperty(client, 'name', {
value: page,
writable: true,
enumerable: true,
configurable: true
});
methodB(client)
}
function methodB(client) {
console.log(client);
console.log("Name property is: "+client.name);
}
methodA({a:9}, 12);

也许尝试制作一个片段给出同样的错误(你可能会自己绊倒解决方案)