gpt4 book ai didi

对象中的 JavaScript 变量赋值

转载 作者:行者123 更新时间:2023-11-28 15:48:59 25 4
gpt4 key购买 nike

这段代码有什么问题? obj.bVar 在这里未定义,为什么呢?如何将 aVar 的值赋给 bVar?

var obj = {
aVar: 15,
bVar: this.aVar // This is undefined
};

console.log(obj.aVar);
console.log(obj.bVar);

最佳答案

this在 JavaScript 中,指的是当前作用域,可以是函数调用,也可以是全局作用域。

这里,this 是全局范围,即 window(除非您在函数中执行此操作)。

这是一个解决方案:

var obj = {
aVar: 15
};
obj.bVar = obj.aVar;

另一种方法(可能相关也可能不相关,具体取决于您的应用程序的上下文)是使用构造函数:

function Obj(){
this.aVar = 15;
this.bVar = this.aVar;
}
var obj = new Obj();

关于对象中的 JavaScript 变量赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21253021/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com