我正在阅读 JavaScript 指南中有关函数的部分。我从那里得到了以下代码:
function map(f, a) {
var result = [], i;
for (i = 0; i != a.length; i++) {
result[i] = f(a[i]);
}
return result;
}
var numbers = [0, 1, 2, 5, 10];
var cube = numbers.map(function(x) {
return x * x * x;
});
console.log(cube);
结果:(5) [0, 1, 8, 125, 1000]
我的问题是 map(f, a)
中的第二个参数 a
在 numbers.map
中调用时如何获得值>?我只看到传递了一个参数,那就是匿名函数。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Functions
最佳答案
您的代码不完整,或者至少与源页面上的指南不同:
function map(f, a) {
var result = [];
var i;
for (i = 0; i != a.length; i++)
result[i] = f(a[i]);
return result;
}
var f = function(x) {
return x * x * x;
}
var numbers = [0,1, 2, 5,10];
var cube = map(f, numbers);
console.log(cube);
关于JavaScript 第二个函数参数神奇地获取了一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47729851/