2017-08-17 14 views
0

私は、コールバック関数の中で2つの変数を返すようにしようとしていますし、それがコールバック関数のエラーではなく、単一の変数を返すときには(文字列化translatedText、)細かい複数の変数が返される場合、コールバックはnodeJSの関数ではありませんか?

function TranslatetoHindi(text,suggestion,callback) { 
translatedText = text 
stringify = JSON.stringify(suggestion) 
*-------------------- 
--------------------code block here --------* 
     callback(translatedText,stringify) 
} 

コールバックを働くスローerror.Thisがある投げています関数呼び出し文

TranslatetoHindi(var1,var2,function(returnedText, returned) 
{ 
---some code here which uses var1 and var2 ---- 
} 
+0

あなたのコールバックは正常に見えますが、何がエラーですか? – James

+0

'callback(translatedText、stringify) ^ TypeError:コールバックは関数ではありません' –

+0

このエラーは@Jamesを投げます –

答えて

0

それはあなたが次の行に中括弧を開くとJavaScriptが機能入力を誤読していることが考えられます。

TranslatetoHindi(var1,var2,function(returnedText, returned) 
{ 
---some code here which uses var1 and var2 ---- 
} 

コードはセミコロンを追加することにより、間違ったに見えたときJavascriptが頻繁にこのフォームを試してみて、それが動作するかどうかを確認するなど、ヘルプにしようとします:

TranslatetoHindi(var1,var2,function(returnedText, returned) { 
---some code here which uses var1 and var2 ---- 
}); 

関数と同じライン上にオープンかっこでありますことを確認します混乱はありません。

+0

この例では明らかですが、そうであればコードは実行されません。私の推測は、それは単にタイプミスです。 – James

+0

@James、多分そうです。しかし、文脈を知らないので、前と後にどんなことが起こっているかによって、それが可能であると思った。 – arbuthnott

+0

私の主張は、それが「予期しないトークン」であった場合、より明白なエラーが存在することです。コードは、コールバックが関数ではないことをOPに伝える限りは得られません。私の推測では、OPは正しいパラメータで渡されていませんが、あなたが言うように、より多くの文脈がなければ、答えるのは難しいです。 – James

関連する問題