js方法之间的调用之——传参方法

在最近项目需求中发现,完成一些功能的时候总是要调很多结构类似的方法,写起来很繁琐,所以就想写一个“万能”方法,是的代码更简洁。即:把一个方法作为参数传给这个“万能”方法,让它去执行你给定的方法,就类似于ajax中success/error方法传参,总是传入一个方法体。

####1.将方法作为参数

  代码:
  var a = function(){
    console.info("我成功执行了...");
  }
  var excuteFunc = function(funcName){
    funcName();
  }
  excuteFunc(a);

  控制台输出:
    我成功执行了...

  上面我们执行把a方法作为参数传给excuteFunc方法,用excuteFunc执行了a方法,但是如果a方法也含有参数呢,看下面的例子
####2.含参数的方法作为参数

  代码:
  var b = function(b){
    console.info("我成功执行了"+b);
  }
  var setFunc = function(fName,p){
    fName(p);
  }
  setFunc(b,"b方法");

控制台输出:
  我成功执行了b方法

  上例中的setFunc方法的第一个参数是要调用方法的句柄,第二个参数是要调用方法的参数,如果是多个依次列出即可

####3一个定时刷新数据的使用场景

  var getData = function(url){
    $.post(url,function(result){
      //逻辑代码...
    });
  }

  var getData1...
  .
  .
  .

  var setTimeFresh = function(fName,time,url){
    setInterval(fName,time,url);
  }

  setTimeFresh(getData,3000,url);//3秒获取依次数据刷新页面
  setTimeFresh(getData1,10000,url1);

  上例通过调用setTImeFresh方法去定时刷新指定数据,从而达到页面部分数据定时刷新的职能

小白菜又来献丑,勿怪!