js函數作參數

參照以下例子

例1:

function add(a, b) {
    console.log( a + b);
}

function subtract(a, b) {
    console.log( a - b);
}

function getStr() {
    console.log('hello')
}
// 函數作參數傳遞,函數的參數以數組形式傳
function use(fn, args) {
    fn.apply(this, args);
}

(function(){
    
    use(add, [1,2])
    use(subtract, [3,1])
    use(getStr)
})()

 

例2:

例1只可以調用window下的函數,卻不可以根據方法名調用某成員函數,

將上邊use函數改寫如下

use: function(fnName, args) {

        var fn = window[fnName];

        if (typeof fn === "function") {

            return fn.apply(this, args);

        }

    }

(function(){
    use("add", [1,2])
    use("subtract", [3,1])
    use("getStr")
})()

發佈了5 篇原創文章 · 獲贊 0 · 訪問量 1064
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章