JavaScript包括

时间:2013-05-23 17:06:25

标签: javascript jquery

我有一个大约3000行的javascript代码。所有功能都在一个文件中。我需要知道是否有办法在同一个文件中包含一个函数。

示例:

function renderGameLayout()

这将包括所有布局设计。

现在稍后在代码中,我将在另一个函数中回调该函数?我试过了:

function getGames()
{
    // other js code here
    $(document).ready(function() 
    {
        renderGameLayout();
    });
    // other js code here
}

在另一个函数中,但这不起作用。有什么建议?注意:我不想包含另一个.js文件,请不要建议。

2 个答案:

答案 0 :(得分:2)

对于大型JS项目,特别是如果您正在使用JS游戏引擎,您应该使用RequireJS之类的东西来管理您的文件和依赖项。

http://requirejs.org/

我认为您会找到答案以及一些可能更好的方法来组织您的项目结构。

答案 1 :(得分:1)

很难确定您的问题是什么,但我认为您希望$(document).ready()为您解雇renderGameLayout功能。你已经将$(document).ready()包装在一个函数中,这样就不会像你期望的那样工作了。将其移到文件正文中:

$(document).ready(renderGameLayout());

或使用机箱来解雇renderGameLayout(),而不是像这样:

(function() {
    renderGameLayout();
})();

您的代码目前并没有多大意义。

编辑:

重新阅读您的问题之后,听起来您想要在单独的脚本文件中使用某个功能而不将脚本添加到您的页面。在那种情况下,不,你不能。您的JavaScript必须知道其他函数的存在。如果你不包含脚本,它将如何知道函数在哪里或什么做?

您可以将该功能移动到功能完全过大的文件中,也可以将脚本添加到页面中。这些是你的选择。

编辑#2:

理想情况下,您希望将JavaScript分解为有意义的文件,并在您投入生产时将其组合并缩小。一个装满3000行的巨型档案似乎是一个坏主意。