Невозможно использовать этот синтаксис без изменения функции. func1.apple
не запускается apple
, и что-то вроде func1().apple
уже запустили apple
. Если вы просто хотите что-то вернуть, то сделать это с помощью return
:
var func1 = function() {
var apple;
…
return apple;
};
var apple = func1();
или вернуть объект, если у вас есть несколько значений для возврата:
var func1 = function() {
var apple;
…
return {apple: apple};
};
var apple = func1().apple;
Если вам нужно значение во время работы функции , единственным способом для этого является использование другого обратного вызова в вашем обратном вызове:
var func1 = function(useApple) {
var apple;
…
useApple(apple);
…
};
func1(function(apple) {
// Do something with apple
});
* Свойства отсутствуют эр путь, но они считают, как обратные вызовы и зло :)
Я думаю, что вы можете сделать это только если вы добавите возвращение яблочного заявление в свой paramfunction. если это не так, как вы хотите, вы должны использовать объектный литерал как параметр, а не функцию –