一:以方法作為參數
這下來說直接以一個方法來作為參數的寫法,直接上代碼:
-----------這樣調用的方法------------- go(function(){ alert("success"); });
那么,這樣直接以一個function作為參數,那么go方法要如接收呢?
-------------以這樣的形式接收並調用,這里顯示兩種方法調用-----------------
function go(fn){ alert("執行go方法");
//下面兩種方式都可以 fn(); fn.call(this); }
二:以方法名作為參數
如果參數里面是一個方法的名稱,在我拿到這個方法名稱的時候,我要如何去調用這個方法呢?
-------------------調用的方式是這樣的--------------------- go("hello");//hello是一個方法名稱
接收並執行的方式是這樣的
-----------------接收並執行------------------ function go(fn){ alert("執行hello方法") //這是調用方法 window[fn].call(this); }
我們可以拿到window[方法名稱].call(this);
里面的this,代表着一個對象,如果需要對象來執行這個方法的時候,就需要寫,否則的話,參數可以不寫