我正在研究Eloquent JavaScript本书之后的高阶函数。 我无法理解此代码,为什么将“ Boolean”作为嘈杂的第一个参数传递?
应该是改变其他功能的功能,我只是不知道它是如何工作的!
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
noisy
接受任何一个参数的函数作为其参数。 它返回一个新函数,该函数将调用该函数,但会在调用该函数之前和之后显示消息。
Boolean
只是他们使用的示例函数。 它将其参数转换为布尔数据类型。
布尔值是布尔值类型的构造函数。 它可以是任何功能。