gpt4 book ai didi

javascript - 打印警报窗口中对象的值

转载 作者:行者123 更新时间:2023-11-28 00:07:33 25 4
gpt4 key购买 nike

我正在尝试在警报窗口中打印出人员对象的名称值。

        var person ={};
person = {
name: 'Tray',
distance_travelled: 0,
say_name: alert(this.name),
}

person.say_name;

我得到的结果是一个空的警报框。当我硬编码名称时,警报框会正确打印。我尝试 say_name:alert(person.name),但返回未定义。我做错了什么?

最佳答案

您需要为 say_name 分配一个函数。现在,您将立即调用该函数并为其分配未定义返回值。这使得 this 指代的内容与您期望的不同。

var person = {
name: 'Tray',
distance_travelled: 0,
say_name: function() {
alert(this.name);
},
}

person.say_name();

现在 this 参数将引用 person 对象,因为当您执行 some_object.someMethod() 时, 的值someMethod() 中的 this 会自动设置为调用它的 some_object

关于javascript - 打印警报窗口中对象的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31214453/

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