第4行的类型错误:回调不是函数JavaScript回调

第4行的类型错误:回调不是函数JavaScript回调,javascript,Javascript,我创建了一个forEach函数,它接受一个数组和一个回调函数,并对数组的每个元素运行回调。forEach函数不返回任何内容。还使用了一个单独的辅助函数映射 函数forEach(数组、回调){ for(设i=0;iconsole.log(i));//应记录:“a”、“b”、“c” console.log(地图类型);//应该记录:“函数” log(map([3,4,5],n=>n-2));//应该记录:[1,2,3]问题存在于forEach(数组,newArr.push(回调))。尝试将第二个参

我创建了一个forEach函数,它接受一个数组和一个回调函数,并对数组的每个元素运行回调。forEach函数不返回任何内容。还使用了一个单独的辅助函数映射

函数forEach(数组、回调){
for(设i=0;iconsole.log(i));//应记录:“a”、“b”、“c”
console.log(地图类型);//应该记录:“函数”

log(map([3,4,5],n=>n-2));//应该记录:[1,2,3]
问题存在于
forEach(数组,newArr.push(回调))。尝试将第二个参数
newArr.push(callback)
包装到一个新的文件中。 结果行将是
forEach(数组,()=>newArr.push(回调))

这是一个例子。查看控制台日志


祝你好运

问题在于forEach(数组,newArr.push(回调))。尝试将第二个参数
newArr.push(callback)
包装到一个新的文件中。 结果行将是
forEach(数组,()=>newArr.push(回调))

这是一个例子。查看控制台日志


祝你好运

将您的
map
功能更改为:

function map(array, callback) {
   let newArr = []
   forEach(array, (value) => newArr.push(callback(value)));
   return newArr;
}

map
功能更改为:

function map(array, callback) {
   let newArr = []
   forEach(array, (value) => newArr.push(callback(value)));
   return newArr;
}

您只需要编写
returnarray.map(回调)和它将工作

As
map
接受
回调
作为
参数
,并且您已经拥有
回调
函数作为
参数
。您所需要做的就是
返回array.map(回调)

同样地,你也可以用它。但是
forEach
不返回任何内容,因此您不能编写
returnarray.forEach(回调)。相反,您需要将其用作
array.forEach(回调)

函数forEach(数组、回调){
forEach(回调);
}
函数映射(数组、回调){
返回array.map(回调);
}
console.log(forEach的类型);//应该记录:“函数”
forEach(['a','b','c',i=>console.log(i));//应记录:“a”、“b”、“c”
console.log(地图类型);//应该记录:“函数”

log(map([3,4,5],n=>n-2));//应该记录:[1,2,3]
您只需要编写
返回array.map(回调)和它将工作

As
map
接受
回调
作为
参数
,并且您已经拥有
回调
函数作为
参数
。您所需要做的就是
返回array.map(回调)

同样地,你也可以用它。但是
forEach
不返回任何内容,因此您不能编写
returnarray.forEach(回调)。相反,您需要将其用作
array.forEach(回调)

函数forEach(数组、回调){
forEach(回调);
}
函数映射(数组、回调){
返回array.map(回调);
}
console.log(forEach的类型);//应该记录:“函数”
forEach(['a','b','c',i=>console.log(i));//应记录:“a”、“b”、“c”
console.log(地图类型);//应该记录:“函数”

log(map([3,4,5],n=>n-2));//应该记录:[1,2,3]
您能解释一下“(值)=>”是如何工作的吗?试图理解为什么它现在正在运行,以及以这种方式重写它最终是如何使它工作的。谢谢。您可以参考了解有关箭头函数的更多信息。您能解释一下“(value)=>”是如何工作的吗?试图理解为什么它现在正在运行,以及以这种方式重写它最终是如何使它工作的。谢谢。您可以参考了解有关箭头函数的更多信息。您的代码将无法工作。它不会根据问题返回所需的值。再看一眼,您是对的。我现在编辑它,以便按预期工作。谢谢你的通知!你的代码将无法工作。它不会根据问题返回所需的值。再看一眼,您是对的。我现在编辑它,以便按预期工作。谢谢你的通知!