给出了以下递归map函数:const U = f => f(f);const map = f => U(h => acc => ([head, ...tail]) => head === undefined console.log(map(x => x * x)([1,2,3,4,5]));显然,递归调用h(h)不是递归函数
为什么在chrome dev控制台中,下面这行代码有时会显示消息"undefined is not a function“:这个想法是如果回调是真的,就执行回调,否则就执行空函数。== undefined) callbackOrUndefined();
编辑:我想我说得不够清楚。它有时似乎将代码块计算为undefined();而我不明白是如何以及为什么这样做的。