Sesetengah kenangan dalam JS hanya perlu dilaksanakan sekali Sebagai contoh, pengesanan jenis penyemak imbas adalah fungsi yang paling biasa digunakan, kerana apabila kita menggunakan Ajax, kita perlu mengesan XHR terbina dalam penyemak imbas. Kami boleh merekodkan jenis semasa pengesanan pertama, dan tidak perlu mengesan jenis penyemak imbas apabila menggunakan Ajax pada masa hadapan. Dalam JS, walaupun hanya terdapat satu pernyataan if, ia sentiasa lebih cekap daripada pernyataan tidak if.
Kaedah Ajax biasa
/**
* Fungsi malas JS
,*/
fungsi ajax(){
If(typeof XMLHttpRequest != "undefined"){
kembalikan XMLHttpRequest();
}else if(typeof ActiveXObject != "undefined"){
If(typeof arguments.callee.activeXString != "string"){
var versions = ["MSXML2.XMLHttp.6.0", "MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp"];
for(var i=0,k=version.length;i
cuba{
ActiveXObject baharu(versi [i]);
arguments.callee.activeXString = versi[i];
rehat;
}tangkap (cth){
buang bekas;
}
}
kembalikan ActiveXObject baharu(arguments.callee.activeXString);
}lain{
baling "Tiada objek XHR";
}
}
Setiap kali fungsi ajax() dipanggil, XHR terbina dalam penyemak imbas mesti diperiksa, yang tidak cekap.
Gunakan pendekatan malas
Salin kod