zoukankan      html  css  js  c++  java
  • javascript 重写已有的方法

    现在有一个需求,需要重写方法,比如方法名为a,但是在方法内部,需要用到原来的方法,怎么办?

    最直接的办法是:

    var b = a;
    
    window.a = function(args){
         
          a.call(window, args);
       }
    };

    当然,这个不是很完美,因为定义了一个全局变量b,

    更完美的解决办法是

    var a = (function() {
        var original_a = a;
    
        if (condition) {
            return function() {
                new_code();
                original_a();
            }
        }
        else {
            return function() {
                original_a();
                other_new_code();
            }
        }
    })();

    使用了一个自执行匿名函数,很完美的解决了这个问题。

  • 相关阅读:
    计算机网络基础
    ansible
    CDH集群日常
    漏洞挖掘学习
    JDWP
    开源安全项目调研
    SMB漏洞汇总
    Windows账户LM/NTLM
    SMB知识汇总
    Memcache未授权漏洞
  • 原文地址:https://www.cnblogs.com/strayling/p/4146613.html
Copyright © 2011-2022 走看看