Я новичок в функциональном программировании, и я пытаюсь изучить его в javascript. Я нашел несколько примеров и написал свой собственный фрагмент, но я не понимаю, ПОЧЕМУ он работает. Существует функция, называемая whatTheHeckIsThis. Может ли кто-нибудь сказать мне, что он делает или какова его цель? Обратите внимание, что при запуске этого кода вывод является истинным.Сложная функция в функциональном программировании javascript
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);
}
Так кроме ненужных ругательств, что немного сбивает с толку вас? – UnholySheep
Знаете ли вы, что '!' Делает? Если вы знаете основы функционального программирования, то должно быть очевидно, как это влияет на функцию. – Barmar
Я думаю, что мой вопрос: почему я не могу это сделать вместо этого: функция boolFlipper (someFn) { return! SomeFn (x, y); } – Accribus