私は2つのバージョンのコードを持っています。誰かが私に最適で速いことを教えてもらえますか?setTimeoutでJavascript関数を呼び出す - これは良いですか?
バージョン1:
function showMsg(a)
{
alert(a);
}
function invokeShowMsg()
{
var msg = 'hi';
showMsg(msg);
}
window.setTimeout(invokeShowMsg,1000);
バージョン2:
function showMsg(a)
{
alert(a);
}
window.setTimeout(function(){showMsg('hi');},1000);
もう一つの疑問は、 "閉鎖" と呼ばれる発呼のバージョン2の方法ですか?
"最適"の条件は何ですか?関数式を評価してその参照を渡すのではなく、すでに宣言されている関数への参照を渡すので、#1は高速ですが、さまざまなブラウザでテストする必要があります。いずれにしても、実行が最低1秒遅れている場合は、速度とはどのような関連性がありますか? – RobG
モバイルブラウザで実行しているので、バージョン2で悪影響がありますか? – thandasoru
あなたが試しても気付かないでしょう。ほとんどの* JSエンジンはコードをコンパイルします。 – Blender