2017-08-26 9 views
2

内部のロジックは何ですか? "Hello world"sの引数がfunction b(s)であることをどのように理解できますか?どのようにその関数の内部に渡すことができますか?これら2つの議論(単純な価値観と議論を伴う機能)は、どのように相互に協力し合うのですか?それらの間に接続がないように見えますが、正常に動作します。引数としての関数への自動引き渡しはJSでどのように機能しますか?

P.S. 2番目の例はかなり明確です。

//1st example 

a("Hello world", b); 

function b(s) { 
    console.log(s + "!!!"); 
} 

//2nd example 

a("Hello world", function(s) { 
    console.log(s + ", how are you?"); 
}); 

function a(s, callback) { 
    callback(s); 
} 
+0

こんにちは、ようこそ! [どのようなトピックについて私が尋ねることができます](http://stackoverflow.com/help/on-topic)と[よくある質問をする方法](http://stackoverflow.com/help/how-to-ask)をお読みください。 )と[完璧な質問](http://codeblog.jonskeet.uk/2010/08/29/writing-the-perfect-question/)を参照してください。あなたの質問には、直接的なコーディングの問題はありません。代わりに、私たちに働くコードを説明するように求めています。 SOはそのような質問をする場所ではありません。おそらく[コードレビュー](https://codereview.stackexchange.com/)が適していますか?私はそれについて完全には分かっていませんが。 – icecub

+0

ありがとう、次回より正確にしようとします。 –

+0

自動ではありませんか?あなたはコールバックを行います... –

答えて

2
a("Hello world", b); 

function a(s, callback) { 
    callback(s); 
    // s -> "Hello World" 
    // callback -> b 
    // callback(s) -> b("Hello World") 

} 

// so.. b("Hello World") 
function b(s) { 
    // s -> "Hello World" 
    console.log(s + "!!!"); 
    // result: "Hello World!!!" 
} 

更新。 enter image description here

+0

私が得ることができないのは、 '関数b(s)'のために '// s - >" Hello World "です。方法と理由? –

+0

関数内には 'callback(s)'があり、 'callback'を' b'に置き換え、 'b(s)'、 's'は' 'Hello World''ですので、' b(s) ' - >' b( "Hello World") 'となります。 – user7552

+0

ありがとうございました。 –

関連する問題