<!DOCTYPE html>
<html>
<!-- https://javascript.info/task/sum-many-brackets -->
<body>
<script>
'use strict';
function sum(a) {
let currentSum = a;
function f(b) {
if (arguments.length === 0) return currentSum;
currentSum += b;
return f;
}
f.toString = function() {
return currentSum;
};
return f;
}
alert( sum(1)(2) ); // 3 alert вызывает toString автоматически.
let result = sum(5)(-1)(2); // будет тело функции а не результат
console.log("в коде бесполезно", result);
console.log("toString", sum(5)(-1)(2).toString() ); // 6
console.log("()", sum(5)(-1)(2)() ); // 6
</script>
</body>
</html>