【问题标题】:Alias method chain in JavaScript?JavaScript中的别名方法链?
【发布时间】:2010-06-10 02:13:34
【问题描述】:

在 JavaScript 中,如何创建一个与现有函数同名的新函数,同时保留原始函数以便在新函数中调用它?

【问题讨论】:

    标签: javascript alias-method


    【解决方案1】:

    您可以将原始函数传递给一个匿名函数,该函数返回一个可以访问原始函数的替换函数。

    例如

    parseInt = (function parseInt(original) {
        return function (x) {
            console.log("original would've returned " + original(x));
    
            // just random 'new' functionality
            return (x | 0) * 2;
        };
    }(parseInt));
    

    示例输出:

    >> parseInt(10);
    << original would've returned 10
    << 20
    

    【讨论】:

      【解决方案2】:

      你想实现函数包装,查看以下文章:

      【讨论】:

        【解决方案3】:

        您可以简单地将旧函数分配给具有不同名称的变量:

        var old_parseInt = parseInt;
        
        function parseInt(s) {
           return old_parseInt(s) + 1;
        }
        

        【讨论】:

          猜你喜欢
          • 2021-09-17
          • 1970-01-01
          • 2017-05-19
          • 1970-01-01
          • 1970-01-01
          • 2011-08-29
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多