Rumah >hujung hadapan web >tutorial js >js set panggilan tamat masaMasa dan panggilan terputus-putus setInterval instance analysis_javascript kemahiran

js set panggilan tamat masaMasa dan panggilan terputus-putus setInterval instance analysis_javascript kemahiran

WBOY
WBOYasal
2016-05-16 16:17:351309semak imbas

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

Salin kod Kod adalah seperti berikut:
//setInval

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.

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn