Развернуть список в функции args?
Дан список аргументов и функция двух арность:
args = [5, 6]
f = ((y,z)->y*z)
Как развернуть аргументы в аргументы функции? - Например, в Python вы можете сделать: f(*args)
,
Что я пробовал (я полагаю, больше в стиле JavaScript):
Function.call.apply(f, args)
# When that failed, tried:
((y,z) -> y*z).call.apply(null, [5,6])
1 ответ
Решение
Использование f(args...)
,
f = (x, y) -> x + y
list = [1, 2]
console.log(f(list...)) # -> 3
Вы также можете смешивать и сопоставлять это с обычными аргументами:
f = (a, b, c, d) -> a*b + c*d
list = [2, 3]
console.log(f(1, list..., 4)) # -> 1*2 + 3*4 == 14