在javascript中使用匿名函数作为其他函数的参数

时间:2015-04-04 07:54:15

标签: javascript anonymous-function

我是javascript的初学者。请看我的代码。

function map(func, ary)
{   var i =0;
var array1 = ary;
while(ary[i]!=NULL){
    array1[i] = func(ary[i]);
    i++;
}
document.write('[' + array1[0] +',' +array1[1]+']'); //just for check result
}

map(function(x) {return (x*4)/2;},[1,3,5,7]);

我希望操作" map(function(x) {return (x*4)/2;},[1,3,5,7]);"在javascript。

我该如何操作该代码?请帮我详细说明。

1 个答案:

答案 0 :(得分:0)

我不明白你真正想问的是什么。你的代码有效。
使用null,false,true而不是NULL FALSE TRUE。 请注意,document.write()是显示结果的糟糕方式。

更好的方法是:

  • 创建/获取div,span,p或某些元素并使用它:div.innerHTML = result;
  • console.log(result); //按F12打开firebug / web tools

// map function that returns result:
function map(func, ary) {
    var i = 0;
    var result = [];   // empty array for results

    while(ary[i] != null){
        result[i] = func(ary[i]);
        i++;
    }
    return result;  // must return result
}

// objects {} and arrays[] are passed by reference to functions
function map(func, ary) {
    var i = 0;
    while(ary[i] != null){
        ary[i] = func(ary[i]);    // changing original `ary`
        i++;
    }
// no need to return anything  
}