как написать тело функции
Всех приветствую, как написать тело функции
function func(){/* ...... */} и вызвать её двумя способами с одинаковым результатом func(3, 5) // 8 func(3)(5) // 8 |
function func() { var a = arguments; return a.length > 1 ? a[0] + a[1] : function(x) { return a[0] + x; }; } |
function func(a, ...args) { if(args.length === 0) return func.bind(this, a); return args.reduce((summ, val) => summ + val, a) } |
const add = function add(...params) { const value = params.length === 1 ? params.shift() : eval(params.join('+')); const fn = (...params) => add(value, ...params); fn.valueOf = Number.bind(null, value); return fn; } console.log(+add(1,3)); console.log(+add(1)(3)); console.log(+add(4,5,1)(3,7)(1,1,1,1,1,1,1,1,1,1,1,1)(0,8,10)); console.log(+add(1)(2)(3)(-6)); |
Часовой пояс GMT +3, время: 02:59. |