javascript - 我们可以将两个函数作为参数传递给另一个函数吗?

标签 javascript arrays function

我是 JavaScript 新手。我们可以将两个变量和数组作为函数的参数传递,也可以将一个函数作为另一个函数的参数传递,但是我们可以像下面这样将 2 个函数作为另一个函数的参数传递吗?

var years = [1996, 1997, 1998, 1999, 2000];

function age(array1, fn) {
    var age = [];
    for (var i = 0; i < array1.length; i++) {
        age.push(fn(array1[i]));
    }
    console.log(age);
}

function calculateAge(yearOfBirth) {
    return 2019 - yearOfBirth;
}

age(years, calculateAge);

function yearsForRetire(years, calculateAges) {
    var yearsForRetire = [];
    for (var i = 0; i < years.length; i++) {
        yearsForRetire.push(65 - calculateAges(years[i]));
    }
    console.log(yearsForRetire);
}

function any(age, yearsForRetire) {
    //body
}

最佳答案

是的,您可以将函数作为另一个函数的参数传递。这是一个非常简单的例子来解释工作:

function a() {
    return 'xyz';
}

function b(a) {
    console.log(a())
}

b(a)

输出:

'xyz' // This is the result from function a

关于javascript - 我们可以将两个函数作为参数传递给另一个函数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55293362/

相关文章:

javascript函数意见

javascript - 如果循环到达底部,如何暂停它? Window.requestanimationframe - Javascript/html5 Canvas

javascript - IE7 和 IE8 使用 ajax 执行函数时出错

function - Pareto 函数与 Julia 中的数据帧?

function - 如何使用ElasticSearch进一步 boost field_value_factor给出的分数?

javascript - var functionName = function() {} vs function functionName() {}

javascript - iframe resize跨域无控制

javascript - 查找一组数组中的最小和最大时间

python - numpy数组的索引和?

javascript - JavaScript Array every 和 some 之间的区别