弹出未定义

解决方案 »

  1.   

    看不懂  跑了下  
    执行到   var m = mapper(increment); 
    此时     函数mapper(f);参数 f = function(x){return x+1;}
             m = function(x){x.map(f);}是不是 少了  等大牛
      

  2.   

    应该是alert(m(data));才对,不是方括号。如上的mapper的功能是返回一个隐藏array的map方法的映射器,有点柯里化的韵味。m(data)等价于data.map(increment);
      

  3.   


    function mapper(f){
    return function(x){
    var y = x.map(f);
    return y;

    }
    }
    var increment = function(x){
    return x+1;
    }
      

  4.   

    不能修改,可气可气。补充:
    你都没东西返回。绝对undefined
      

  5.   

    谢谢各位,
    为什么直接 return x.map(f); 不行呢?求解释