请给我解释一下这个高阶函数的javascript代码
我在读一本有说服力的JavaScript书之后学习高阶函数。 我一直无法理解这段代码,为什么“Boolean”作为第一个参数传递 这应该是改变其他函数的函数,我只是不明白它是如何工作的请给我解释一下这个高阶函数的javascript代码,javascript,functional-programming,higher-order-functions,Javascript,Functional Programming,Higher Order Functions,我在读一本有说服力的JavaScript书之后学习高阶函数。 我一直无法理解这段代码,为什么“Boolean”作为第一个参数传递 这应该是改变其他函数的函数,我只是不明白它是如何工作的 function noisy(f) { return function(arg) { console.log("calling with", arg); var val = f(arg); console.log("cal
function noisy(f) {
return function(arg) {
console.log("calling with", arg);
var val = f(arg);
console.log("called with", arg, "- got", val);
return val; };
}
noisy(Boolean)(0);
// → calling with 0
// → called with 0 - got false
Boolean是布尔类型的构造函数。它可以是任何函数。布尔是布尔类型的构造函数。它可以是任何函数。
noised
接受任何一个参数函数作为其参数。它返回一个调用该函数的新函数,但在调用前后显示消息
Boolean
只是他们使用的一个示例函数。它将其参数转换为布尔数据类型。noised
接受任何一个参数函数作为其参数。它返回一个调用该函数的新函数,但在调用前后显示消息
Boolean
只是他们使用的一个示例函数。它将其参数转换为布尔数据类型。它没有使用new
,它只是调用布尔
函数。对不起,我写得太匆忙了。以巴尔马的回答为准。就我所见,noise()
函数是非常无用的。我真正想指出的是,Boolean
是一个构造函数。它没有使用new
,它只是调用Boolean
函数。对不起,我写得很匆忙。取而代之的是巴尔玛的回答。就我所见,noise()
函数是非常无用的。我真正想指出的是,Boolean
是一个构造函数。