JSFiddle - React, Tailwind, and code Playground

by TheCrossCarrier

JavaScript

'use strict'

const addition = (a, b) => a + b

const subtraction = (a, b) => a - b

const calculate = method => num1 => num2 => method(num1, num2)

console.log(calculate(addition)(2)(3))
console.log(calculate(subtraction)(2)(3))

const sum = (() => {
	let res = 0
	  
	return num => {
  	if (num) {
    	res += num
    	return sum
    }
    return res
  }
})()
	
	/* console.log(sum(1)(2)(10)(1111)()) */
	
const inc = (() => {
	let cnt = 0
	  
	  return () => ++cnt
	})()

/* console.log(inc(),
inc(), inc()) */