2016-08-18 2 views
0

Ich arbeite mit node.js und wie kann ich Callback als Option einer bestimmten Funktion einstellen?Rückruf als Option in node.js

Zum Beispiel:

function sum(a, b, callback) { 
     return callback(a+b) 
    } 

    var result = sum(a,b) // this seems to cause error: callback is not a function 

    sum(a, b, function(sum) { 
     // this works fine 
    }) 

Gibt es eine Möglichkeit sowohl die oben (mit und ohne Rückruf) arbeiten zu machen?

Danke!

Antwort

2

Überprüfen Sie einfach, ob das Argument callback eine Funktion ist.

function sum(a, b, callback) { 
    if(typeof callback === 'function'){ 
     return callback(a+b) 
    } 
    else { 
     return a+b; 
    } 
} 

(Demo JSFiddle)

+0

Danke! Ich dachte, ich müsste diese Funktion oder etwas überladen ... Von C++ zu sehr beeinflusst werden – zhouchengkho

-2

Hallo Sie können Ihren Code wie unten

function sum(a, b, callback) { 
    if(typeof callback === 'function'){ 
     return callback(a+b) 
    } 
    else { 
     return a+b; 
    } 
} 

die auch haben erwähnt wird:

if(typeof callback === 'function'){ 
    return callback(a+b); 
} 

So können Sie Ihre Summenfunktion wie geschrieben in der obigen Post

Verwandte Themen