1

我在网上搜索以尝试理解这个术语。我了解“一流函数”是可以分配给变量并“传递”的函数。但我实际上不明白这意味着什么。

那么这是什么意思呢?一等函数究竟是什么?

示例将受到欢迎。

4

1 回答 1

1

第一类函数基本上意味着函数作为一种数据类型,就像字符串、数组或数字一样。所以在 Javascript 中,函数就是数据。

你应该看看:

什么是一等公民功能?

因此您可以将函数作为另一个函数的参数传递:

function map(array,fun){
    var result = [];
    for(var i=0;i<array.length;i++){
       result.push(fun(array[i]));
    }
    return result;
}

map([1,2,3],function(a){return a+1;});   //yields [2,3,4]

在这里,我们有一个函数,它遍历一个数组并在数组的每个元素上返回应用程序的结果(作为参数传递)。所以应用程序的乐趣是一个变量,因此是数据。

如果与 Java 相比,如果不编写类,则无法在 java(最多 7 个)中做到这一点,因此函数不是 java <=7 中的第一类,与整数或浮点数或类本身不同。Java(<=7) 只有类的方法,没有函数。

于 2014-03-28T21:00:48.110 回答