gpt4 book ai didi

javascript - 使用方法名称作为实例变量的值

转载 作者:行者123 更新时间:2023-11-30 06:00:14 27 4
gpt4 key购买 nike

我正在尝试完善我的 Javascript 知识。这看起来是一件很简单的事情,但却让我感到困惑。

我需要将方法名称存储为变量。将我的测试用例减少到尽可能小的大小,结果如下:

var someobj = { 
someMethod: function() {
console.log('woo');
},
somevariable: this.someMethod
}

没有回调,一切都很好很简单。

console.log(someobj.someMethod);

返回:

[Function]

太棒了。但是:

console.log(someobj.somevariable)

返回:

undefined

我期待它返回“[Function]”。这是为什么?

谢谢。

最佳答案

当以 JSON 格式声明对象时,没有 this 关键字。 (好吧,有,但 i 指的是外部上下文的 this,例如全局上下文中的 window)您不能在这样的声明中访问当前对象。因此,您之后需要设置该变量,如下所示:

var someobj = { 
someMethod: function() {
console.log('woo');
}
}
someobj.somevariable = someobj.someMethod;

关于javascript - 使用方法名称作为实例变量的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9053336/

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