使一个函数作为另外一个函数的参数来运行的javascript代码

  先看一段代码:

  

复制代码 代码如下:

  var a = [1,2,3];

  function map(fn, a, init){

  var s = init;

  for (i = 0; i < a.length; i++){

  s = fn(s,a[i]);

  }

  return s;

  }

  alert(map(function(x,y){return x+y;}, a , 0)) //把数组的各个元素相加求和

  alert(map(function(x,y){return x+y;}, a , "")) //把数组的各个元素连接起来

  map 函数定义了对 a 数组遍历一次,但具体对各个元素执行何种操作,却没有定义,需要从其第一个参数来定义。

  这种方法能提高代码的重用性。不错。