jQuery/Javascriptコードを最適化してコードスタイルを改善する方法を探しています。
私のようなプロのブログや信頼できるソースを参照してきた:
https://google.github.io/styleguide/jsguide.html
https://learn.jquery.com/performance/optimize-selectors
しかし、また、「...かしら」しばらくしていたし、周りで遊んでいました大きな関数の初めにセレクタを定義します。例えば
、というより:私は疑問に思い
var myFunction_B() {
var $my_input = $("#my_input");
// lots of code
if ($my_input.val() === "x") {
// do something
}
}
:
var myFunction_A() {
// lots of code
var my_input = $("#my_input").val();
if (my_input === "x") {
// do something
}
}
これを行う
- を変数
$my_input
はmy_input
よりもサイズが大きくなりますか? my_input
を使用するよりも遅くなるのは$my_input
ですか?
これは、サイトを使用して私の最初の時間ですが、私はjsPerf testを走り、第1のセレクタを定義すること(〜6から10までパーセント)高速ですが、それでも可変サイズについて確認していないようです。
$my_input = $("#my_input")
が大きくなると思われますが、私はおそらく「裏口の裏に」my_input = $("#my_input").val()
がまだ完全な要素値への参照を「保持」している可能性があると考えました。
HTML
<input id="#something1">
<input id="#something2">
<input id="#something3">
<input id="#something4">
<input id="#something5">
jQueryの
テスト01
var $something_01 = $("#something1");
var $something_02 = $("#something2");
var $something_03 = $("#something3");
var $something_04 = $("#something4");
var $something_05 = $("#something5");
console.log($something_01.val());
console.log($something_02.val());
console.log($something_03.val());
console.log($something_04.val());
console.log($something_05.val());
テスト02
console.log($("#something1").val());
console.log($("#something2").val());
console.log($("#something3").val());
console.log($("#something4").val());
console.log($("#something5").val());