3
setInterval("RunSlide()", 5000);

まず、括弧と引用符で関数を呼び出します。

setInterval("RunSlide", 5000);

次に、括弧なしで引用符を使用して関数を呼び出します。

setInterval(Runslide, 5000);

3 番目に、括弧と引用符を使用せずに関数を呼び出します。

RunSlide();

4 番目に、括弧を使用して関数を呼び出します。

RunSlide;

5 番目に、括弧なしで関数を呼び出します。

4

1 に答える 1

2

結果は同じかもしれませんが、異なる引数タイプの使用には違いがあります。


  • setInterval ("argument as string", delay)

    これは、文字列を に渡す場合と同じ動作を引き起こすため、お勧めしevalませ(まったく同じ理由で、この件に関する詳細は Webで見つけることができます)。

スニペットの例:

 setInterval ("console.log ('hello world');", 100);

  • setInterval (func_reference, delay, param1, param2, ...)

    これにより、 が指す関数funcが呼び出されます。これは推奨されるオプションです。この方法で関数を呼び出すと、実行する関数にパラメーターを渡すこともできます。

スニペットの例:

function say_it (word1, word2) {
  console.log (word1 + " " + word2);
}

setInterval (say_it, 100, "hello", "world");

setInterval (function (word1, word2) {
   console.log (word1 + " " + word2);
}, 100, "hello", "world);

ノート)

関数の名前だけsetIntervalを含む文字列として最初の引数を使用して呼び出すことはまったく無意味であり、関数は実行されません。コードのどこかに以下を書くのと同じです。

alert;

RunSlide();上記の例を見れば、との違いはRunSlide;明らかです。1 つはRunSlideという名前で参照される関数を呼び出し、もう 1 つは呼び出しません (何もしません)。

于 2012-07-16T17:37:03.930 に答える