javascript - 当内存中有多个同名函数时调用特定的javascript函数

标签 javascript

我需要调用特定的js函数。问题是很多时候运行时情况可能会出现另一个 js 文件可能包含同名函数的情况。但我需要具体说明我应该调用哪个函数。 函数重载不是我的解决方案。

感谢和问候, 坦美

最佳答案

您将不得不对资源进行一些重组,并尽可能使用命名空间。

如果您有一个名为 saySomething 的方法被定义了两次,您可以将其中一个方法移动到一个对象(以更适合您的需要为准)。

var myNS = new (function() {

    this.saySomething = function() {
        alert('hello!');
    };

})();

另一个定义可以移到不同的对象中,甚至可以单独保留。

function saySomething() {
    alert('derp!');
}

你现在可以像这样调用saySomething方法

saySomething();      // derp!
myNS.saySomething(); // hello!

编辑:因为它是在评论中提出来的,所以

var myNS = {
    saySomething: function() {
        alert('hello!');
    }
};

相当于第一个代码块,形式更简单(如果我没记错的话)。

关于javascript - 当内存中有多个同名函数时调用特定的javascript函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3502847/

相关文章:

javascript - 如何使用 Javascript 重复一个字符?

javascript - 解析.com : Default parameters to identify user?

Javascript 对象继承与 iife

javascript - 如何每次旋转CSS立方体

Javascript toLocaleString onKeyUp 事件

javascript - Node - 编辑特定文件后重新启动服务器

javascript - 使用 JavaScript 计算输入元素中值的总和

javascript - 是否有 JSONP 图片搜索 API 可让用户在我的网站上搜索图片?

javascript - insertRule 不适用于关键帧

javascript - 使用 Firebase 登录的 Facebook API 调用