2

我有两个同名的函数;比方说foo()

一个在 HTML 文件中,一个在 JS 文件中,包含在 HTML 文件中。问题是我想优先考虑 JS 文件函数而不是 HTML 文件函数。

有什么方法可以做到这一点,或者 JavaScript 中是否有任何语法[JSFileName].foo(),可能会调用 JS 文件中的函数?

4

3 回答 3

5

不知道为什么要拥有两个同名的函数。

刻薄的答案是:只需删除对您不想要的功能的引用。(如果您可以控制自己的 html,则不应该存在这种情况。)

您正在寻找的答案:将外部脚本标签放在内联脚本标签之后。

于 2013-05-31T16:59:49.440 回答
0

确保 js 文件的脚本标记位于foo声明的 HTML 脚本标记之后。

于 2013-05-31T17:00:21.510 回答
0

从您的问题中不清楚为什么您有两个名为 的函数foo,但根据您[JSFileName].foo()对解决方案的尝试,我可能建议使用对象作为命名空间。在您的脚本中,您可以执行以下操作:

var myScriptFunctions = {
    foo: function() {
        // do foo stuff
    }
}

您可以使用它来调用它,myScriptFunctions.foo()并且不会有两个函数竞争全局名称foo

于 2013-05-31T17:03:17.923 回答