Rumah >hujung hadapan web >tutorial js >Analisis mendalam tentang mekanisme pelaksanaan acara dalam JS
Artikel ini akan memberi anda pemahaman yang mendalam tentang mekanisme pelaksanaan acara dalam JavaScript dengan menganalisis urutan pencetakan sekeping kod saya harap ia akan membantu anda!
Saya agak keliru tentang soalan ujian bertulis suatu masa dahulu. Hari ini kita akan menganalisis secara menyeluruh mekanisme pelaksanaan acara JS. [Cadangan berkaitan: Tutorial pembelajaran javascript]
Kamu boleh cuba menulis pesanan cetakan
JS
digunakan terutamanya sebagai bahasa skrip untuk penyemak imbas adalah untuk mengendalikan DOM, yang menentukan Js
mesti berbenang tunggal Jika JS
berbilang benang seperti Java, jika dua utas mengendalikan DOM pada masa yang sama, bagaimanakah penyemak imbas harus melaksanakannya? Pengeluaran JS
sebenarnya adalah untuk mengambil kesempatan daripada populariti Java Bahasa ini ditulis tidak lama dahulu, jadi inilah sebabnya JS adalah single-threaded JS
, daftar fungsi panggil balik Event Table
Event Queue
dan laksanakan Event Queue
事件循环
>
ialah tugasan segerak, yang mula-mula memasuki timbunan pelaksanaan 开始了
dan task()
ialah tugasan Segerak, masukkan timbunan pelaksanaan a
Masuk tindanan pelaksanaan sebagai tugas segerakb
Menjadi tugas mikro tugas tak segerak dan memasuki tindanan pelaksanaan, a end
Setakat ini, baris gilir tugas segerak ialah , 开始了
, a
b
Setakat ini, baris gilir tugas tak segerak ialah tugas makro: Mikro Tugasan: setTimeout
a end
dicetak selepas setTimeout
? a end
看这张图
akan dilaksanakan terlebih dahulu, dan selepas pelaksanaan, ia akan dinilai bahawa tugas makro semasa telah tamat. Laksanakan tugas makro seterusnya dan cetak a end
setTimeout
Disebabkan penukaran Janji, ia menjadi segerak Tugasan memasuki baris gilir tugas c
Memasuki baris gilir tugas sebagai microtask terbitan Janji c end
Memasuki tugasan sebagai Baris Tugasan segerakd
a
b
c
d
tugasan mikro tamat
tugas mikro tamatkan
tugasan masa tamat
Jadi susunan cetakan adalah seperti berikut
Pemahaman saya sendiri tentang mekanisme pelaksanaan JS mungkin tidak betul, saya harap anda akan bos menunjukkan.
[Tutorial video berkaitan yang disyorkan: bahagian hadapan web]
Atas ialah kandungan terperinci Analisis mendalam tentang mekanisme pelaksanaan acara dalam JS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!