gpt4 book ai didi

javascript - 将对象绑定(bind)到全局范围

转载 作者:行者123 更新时间:2023-11-28 16:08:57 25 4
gpt4 key购买 nike

我有以下代码:

var myVar = (function (window) {    

myobj = {};

myobj.boo = function() {
alert('hi');
};

window.myVar = myobj;

})(window);

myVar.boo();

为什么我在调用 myVar.boo() 时没有收到警报?我创建了一个匿名自执行函数并输入窗口对象。在其中我有另一个对象,并为其分配了一个方法。然后我将全局 myVar 变量分配给该 obj。这应该为 mymyobj 对象提供一个别名。但是,当我调用该函数时,我收到 Cannot call method 'boo' of undefined 错误

最佳答案

您应该删除第一个作业

var myVar =

当您将 myVar 值替换为不返回任何内容的函数的返回值时,

或更可能从函数中返回 myVar,而不是从闭包内部分配:

var myVar = (function() {
var myobj = {};

myobj.boo = function() {
alert('hi');
};

return myobj;
})();

关于javascript - 将对象绑定(bind)到全局范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13728320/

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