gpt4 book ai didi

javascript - 匿名自调用 JavaScript 函数 - 返回多个对象

转载 作者:行者123 更新时间:2023-11-28 16:35:13 24 4
gpt4 key购买 nike

如果我有原始功能(作为示例):

var x = function() { alert('tadaaa'); return 1; }
var y = function() { alert('tadaaa'); return 1; }

我已经将其变成了一个自调用的匿名 JS 函数,如下所示:

(function() {
var x = function() { alert('tadaaa'); return 1; }
var y = function() { alert('tadaaa'); return 1; }
})()

我在做一些自相矛盾的事情吗?我想将 x 和 y 作为全局变量访问,但自调用匿名函数在其他领域很有用,我现在不详细介绍 - 我只想保留它。

我应该做这样的事情:

   var  x= (function() {
var x = function() { alert('tadaaa'); return 1; }
var y = function() { alert('tadaaa'); return 1; }
// Should I be doing something like
return x
})()

   var  x= (function() {
var x = function() { alert('tadaaa'); return 1; }
return x
})()

var y = (function() {
var x = function() { alert('tadaaa'); return 1; }
return y
})()

似乎有点多余?

最佳答案

我不确定这的目标是什么,但也许你可以在一个对象中返回这两个函数,如下所示:

var funcs = (function() {
var x = function() { alert('tadaaa'); return 1; };
var y = function() { alert('tadaaa'); return 1; };
return {x: x, y: y};
})();

funcs.x();
funcs.y();

这基本上就是模块模式的含义(例如,参见 http://www.adequatelygood.com/2010/3/JavaScript-Module-Pattern-In-Depth )。

这很好!当然,这取决于您的需要。

关于javascript - 匿名自调用 JavaScript 函数 - 返回多个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4376410/

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