gpt4 book ai didi

javascript - 从javascript中的其他函数执行另一个函数

转载 作者:行者123 更新时间:2023-11-30 12:35:42 25 4
gpt4 key购买 nike

嘿伙计们在运行另一个函数时有点困惑。我尝试过的是:

var a = (function() {
var babe = function() {
console.log('yay');
};
})();

当我运行像 a.babe() 这样的代码时,它会给我像 TypeError: Cannot read property 'babe' of undefined 这样的错误。为什么会这样?

我想从 a 调用函数 babe ... 我该怎么做?我希望你们能帮助我...

提前致谢。

最佳答案

您正在创建一个名为 babe 的函数,它只停留在围绕它的立即调用函数表达式 (IIFE) 的范围内。由于您没有向调用者返回任何内容,因此默认情况下,函数调用将被评估为 undefined 并将存储在 a 中。这就是您收到错误的原因,

TypeError: Cannot read property 'babe' of undefined

这意味着,您正在尝试访问一个名为 babe 的属性,该属性位于 undefined 值上。在这种情况下,aundefined

除此之外,您可以简单地从 IIFE 返回 babe 函数,将其包装在一个对象中,如下所示

var a = (function() {
return {
babe: function() {
console.log('yay');
}
};
})()

现在,返回的对象已分配给 a,您可以像这样调用 babe 函数

a.babe();

关于javascript - 从javascript中的其他函数执行另一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26155357/

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