Ответ 1
Просто создайте обратный вызов обертки:
callWithMagic(function(magic) {
return processMagic(magic, 42);
});
Или используя ECMAScript 6 функции стрелок:
callWithMagic(magic => processMagic(magic, 42));
У меня есть функция callWithMagic
, которая принимает функцию обратного вызова в качестве параметра и вызывает ее с одним аргументом.
const callWithMagic = callback => {
const magic = getMagic();
callback(magic);
};
У меня также есть функция processMagic
, которая принимает два аргумента: magic
и theAnswer
.
const processMagic = (magic, theAnswer) => {
someOtherMagic();
};
Я хочу передать функцию processMagic
как аргумент callWithMagic
, но также хочу передать 42
в качестве второго параметра (theAnswer
) на processMagic
. Как я могу это сделать?
callWithMagic(<what should I put here?>);
Просто создайте обратный вызов обертки:
callWithMagic(function(magic) {
return processMagic(magic, 42);
});
Или используя ECMAScript 6 функции стрелок:
callWithMagic(magic => processMagic(magic, 42));
Вы можете использовать функцию анонимного
что-то вроде
session.sub('Hello', function(){marketEvents(your args);});
Вы можете создать функцию, которая вызывает функцию marketEvent
. Не нужно усложнять вещи.
session.sub('Hello', function(args, kwargs) {
marketEvent(args, kwargs, 'my custom data');
});
в противном случае вы можете сделать это:
var mrktEvent = function(customArgs) {
return function(args, kwargs) {
marketEvent(args, kwargs, customArgs)
};
}
session.sub('Hello', mrktEvent("customEvent"));