JS性能問題の最適化
7108 ワード
JS性能問題
1、ブラウザが
2、オブジェクト と の は よりも いです.コード 、 なデータアクセスは4 のタイプがあります. 、 <オブジェクトの 、 . またはオブジェクト を すると、 を させる を できます. の なstate/ / を します.
3、グローバル を けることで、グローバルオブジェクトの (windowなど)をローカル に することができます.ローカル にアクセスする はグローバル よりも いです.
4、with を ける
5、 はhtmlコードの ろに いてあります.JSは から まで します.JSコードが リンクに されたら、まずJSファイルをダウンロードしてから します. に のコードがブロックされます.(その のcss、イメージダウンは ).だから にscript を の に いてください.
6、 の を する: 、 が で、より くの を する がある. で を らすなど.
8、 の を ける: つのDOM は つの ( )を ち、この は き きこのDOM を して、メモリ れを き こす(ブラウザが を じるまで).
9、 : の リンクがある 、+= に (string+=a;string+=b;)を する.string+=a+b+cが えます. を して を に し、array.join(')を してもよい.リンク ;
10、instance ofとtypeofを して、データの を します.instance ofは、オブジェクトが のオブジェクトの チェーン にあるかどうかを する.
11、JS https://www.jianshu.com/p/eece86baec10
Oloadはユーザーのブラウザバージョンと を するために されます.onload and onundoadはcookiesを するのに います.
addEventListenerは、 のイベント( じイベントが の をトリガする)をカバーしないように、 じタイプのイベントハンドルを つのオブジェクトに することができる.
API
: でパターンマッチングが したら、 しい の を するには、 でlastIndex を0にリセットしなければなりません.
ヒント:RegExpObjectがグローバルモードであるかどうかにかかわらず、exec()は な をそれが ってくる に します.これはexec()とStering.match()の いです. はグローバルモードで る がかなり ないです.したがって,サイクル でexec()を り し び す は,グローバルモードの モード を る の であるといえる.
1、ブラウザが
タグに した 、 のHTMLページはJavaScriptが
タグにコンテンツを するか、または の を するか、またはラベルを するかどうかを ることができません.したがって、ブラウザはページの を し、JavaScriptコードを に してから、ページの とレンダリングを けます. の も、ScriptをSrc でロードする で、ブラウザは チェーンファイルのコードを をかけてダウンロードし、 して しなければならない.このプロセスでは、ページレンダリングとユーザインタラクションは にブロックされました.2、オブジェクト と の は よりも いです.コード 、 なデータアクセスは4 のタイプがあります. 、 <オブジェクトの 、 . またはオブジェクト を すると、 を させる を できます. の なstate/ / を します.
3、グローバル を けることで、グローバルオブジェクトの (windowなど)をローカル に することができます.ローカル にアクセスする はグローバル よりも いです.
4、with を ける
5、 はhtmlコードの ろに いてあります.JSは から まで します.JSコードが リンクに されたら、まずJSファイルをダウンロードしてから します. に のコードがブロックされます.(その のcss、イメージダウンは ).だから にscript を の に いてください.
6、 の を する: 、 が で、より くの を する がある. で を らすなど.
for (let i = 0; i < 10; i++) {
// , 、 、
}
//
let a = 10;
do {
//
} while (a--);
7、 nodeListオブジェクトdocument.getElementByTagName("img");
がtagName、childrenNode/atributes/などを するとNodeListオブジェクトが られ、このような が する.8、 の を ける: つのDOM は つの ( )を ち、この は き きこのDOM を して、メモリ れを き こす(ブラウザが を じるまで).
9、 : の リンクがある 、+= に (string+=a;string+=b;)を する.string+=a+b+cが えます. を して を に し、array.join(')を してもよい.リンク ;
10、instance ofとtypeofを して、データの を します.instance ofは、オブジェクトが のオブジェクトの チェーン にあるかどうかを する.
11、JS https://www.jianshu.com/p/eece86baec10
Oloadはユーザーのブラウザバージョンと を するために されます.onload and onundoadはcookiesを するのに います.
addEventListenerは、 のイベント( じイベントが の をトリガする)をカバーしないように、 じタイプのイベントハンドルを つのオブジェクトに することができる.
window.addEventListener("resize", function() {
document.getElementByID("demo").innerHTML = 'resizing';
});
addEventListener(event, function, useCapture);
のパラメータ:true-falseイベントの かそれともイベントのキャプチャかを する(デフォルトはfalseイベントの ち)イベントの ち: つのイベントの 、まず のイベントのコールバック ( span)をトリガする.イベントキャプチャ:まず のイベントコールバック ( div)をトリガするイベントが します.<div>
<span>span>
div>
ieブラウザは の を っています.API
exec();
exec()メソッドは、 の のマッチングを するために される.: でパターンマッチングが したら、 しい の を するには、 でlastIndex を0にリセットしなければなりません.
ヒント:RegExpObjectがグローバルモードであるかどうかにかかわらず、exec()は な をそれが ってくる に します.これはexec()とStering.match()の いです. はグローバルモードで る がかなり ないです.したがって,サイクル でexec()を り し び す は,グローバルモードの モード を る の であるといえる.
var str = "Visit W3School";
var patt = new RegExp("W3School","g");
var result = patt.exec(str);
console.log(result);
console.log(patt);
コンストラクタを って を する 、 されたパラメータが の 、この さの を します.オブジェクトの を って を します. が されると、 の の はこの です.let array1 = new Array(5);
let array2 = [5];