Artikel ini menganalisis penggunaan set panggilan tamat masa jsTimeout dan setInterval panggilan terputus-putus. Kongsikan dengan semua orang untuk rujukan anda. Butirannya adalah seperti berikut:
Saya membaca buku Pengaturcaraan Lanjutan JavaScript (Edisi Ketiga) hari ini dan mendapati setTimeout lebih baik daripada setInterval, dan saya fikir ia adalah benar. Saya biasanya menggunakan setInterval lebih banyak, tetapi sekarang saya perlu mengubah fikiran saya. Belajar lagi. Analisis adalah seperti berikut:
setTimeout mengandungi dua parameter, parameter pertama ialah kod yang akan dilaksanakan, dan parameter kedua ialah masa.
Parameter pertama boleh menjadi rentetan atau fungsi, tetapi disyorkan untuk menggunakan fungsi dan bukannya rentetan.
Menggunakan rentetan adalah bersamaan dengan kaedah eval. mengakibatkan kehilangan prestasi.
clearTimeout()
Kod yang dipanggil dengan tamat masa dilaksanakan dalam skop global, jadi nilai ini dalam fungsi menghala ke objek tetingkap dalam mod ketat dan tidak ditentukan dalam mod ketat
nombor var = 0;
var maks = 10;
var intervalId = null;
fungsi incrementNumber(){
nombor ;
jika(bilangan == maks){
clear Interval(innervalId);
makluman('selesai');
}
}
intervalId = setInterval(incrementNumber(),500);
//setTimeout melaksanakan fungsi yang sama
nombor var = 0;
var maks = 10;
fungsi incrementNumber2(){
nombor ;
jika(bilangan < maks){
setTimeout(incrementNumber2,500);
}lain{
makluman('selesai');
}
}
setTimeout(incrementNumber2,500);
Perbandingan di atas menunjukkan bahawa apabila menggunakan panggilan tamat masa, tidak perlu menjejaki id panggilan tamat masa, kerana selepas setiap pelaksanaan kod, jika panggilan tamat masa lain tidak ditetapkan, panggilan akan berhenti dengan sendirinya.
Secara umumnya dipercayai bahawa jika panggilan tamat masa digunakan untuk mensimulasikan panggilan terputus-putus, ia adalah mod terbaik.
Dalam persekitaran pembangunan, panggilan terputus-putus sebenar jarang berlaku kerana panggilan terputus-putus kemudian mungkin bermula sebelum panggilan terputus-putus sebelumnya ditamatkan.
Sebaik-baiknya jangan gunakan panggilan terputus-putus.
Saya harap artikel ini akan membantu reka bentuk pengaturcaraan JavaScript semua orang.