JSFiddle - React, Tailwind, and code Playground
by Vladymyr Shevchuk
JavaScript
function sum(a) {
var currentSum = a;
function f(b) {
currentSum += b;
return f;
}
f.toString = function() {
return currentSum;
};
return f;
}
function makeSummator (initValue) {
let accum = initValue;
function sum (number) {
accum += number;
return sum;
}
sum.toString = () => {
console.error('toString');
return accum;
};
return sum;
}
function add(...args) {
function recSum(num) {
return add(...args, num)
}
recSum.valueOf = function() {
return args.reduce((acc, n) => acc + n, 0)
};
return recSum;
}
console.error(sum(1)(2)(3));
console.error(makeSummator(1)(2)(3));
console.error(add(1)(2)(3));