gpt4 book ai didi

Javascript对象构造函数获取调用构造函数的变量名称

转载 作者:行者123 更新时间:2023-12-02 14:10:44 25 4
gpt4 key购买 nike

这可能是不可能的,但我还是需要问。

如果我有一个类似的构造函数:

function CS_Sidekick() {
//do whatever
}
var foo = new CS_Sidekick();

从 CS_Sidekick 构造函数内部有什么方法可以找出调用构造函数的变量,在本例中我想获取 foo。

所以类似

function CS_Sidekick(){
//return foo since that's the variable that called it
}

最佳答案

From inside the CS_Sidekick constructor is there any way to figure out the variable that called the constructor, in this case i'd like to get foo.

不,没有。 CS_Sidekick() 构造函数不知道调用代码将如何处理生成的新实例。

您确实需要描述您实际想要解决的问题,因为您在这里的评论毫无意义:

function CS_Sidekick(){
//return foo since that's the variable that called it
}

当有这样的代码时:

var foo = new CS_Sidekick();

CS_Sidekick() 运行时,foo 的值尚未设置,因此 CS_Sidekick() 尝试尝试没有任何意义返回foofoo 还没有值。此外,调用者代码的全部要点:

var foo = new CS_Sidekick();

是为变量foo分配一个新的CS_Sidekick()实例。如果这不是调用者想要的,那么调用者需要将其代码更改为其他内容。

new CS_Sidekick(); 应返回 CS_Sidekick 对象的新实例。这就是它应该做的。

附注

如果您希望 CS_Sidekick() 构造函数了解有关其调用者的信息,那么您可以将其作为参数传递给构造函数。没有自动方法可以从构造函数中检索有关调用环境的信息。

关于Javascript对象构造函数获取调用构造函数的变量名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39604017/

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