gpt4 book ai didi

javascript - javascript函数式编程中令人困惑的函数

转载 作者:太空宇宙 更新时间:2023-11-04 16:25:56 24 4
gpt4 key购买 nike

我是函数式编程的新手,我正在尝试用 javascript 来学习它。我找到了一些例子并编写了自己的代码片段,但我不明白它为什么有效。有一个函数叫做whatTheHeckIsThis。有人可以告诉我它在做什么或者它的目的是什么?请注意,运行此代码时,输​​出为 true。

function boolFlipper(someFn){
return function whatTheHeckIsThis(x,y){
return !someFn(x,y);
};
}

var checkStrings = function(x, y){
return x === y;
}

var flipperTester = boolFlipper(checkStrings);

var str1 = "this string";
var str2 = "that string";

console.log(flipperTester(str1, str2));

我的困惑是为什么我不能这样做:

function boolFlipper(someFn){ 
return !someFn(x,y);
}

最佳答案

whatTheHeckIsthis() 的引用将被返回并存储到 flipperTester

此后,flipperTester 就可以像函数一样使用了。

您可以使用此语言功能来抽象一些代码。

简单的例子:

function addTen(x) { return x + 10 }
function multiplyByTen(x) { return x * 10 }

...

var doMath

// somewhere a user selected something
if (userInputSaysAdd) doMath = addTen
if (userInputSaysMultiply) doMath = multiplyByTen

// this will be the choosen function
doMath(someValue)

关于javascript - javascript函数式编程中令人困惑的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40226769/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com