Rumah > Artikel > hujung hadapan web > Apakah maksud javascript asynchronous?
Dalam JavaScript, tak segerak bermaksud tidak melaksanakan mengikut tertib kod Pelaksanaan proses tak segerak tidak lagi mempunyai hubungan berjujukan dengan urutan asal Tugasan dapat difahami bahawa tak segerak bermaksud melancarkan sub-benang dari utas utama untuk menyelesaikan tugasan.
Persekitaran pengendalian tutorial ini: sistem Windows 10, versi JavaScript 1.8.5, komputer Dell G3.
Apakah maksud JavaScript tak segerak Ia adalah konsep yang bertentangan dengan Segerak (segerak). Dalam pengaturcaraan berbenang tunggal tradisional yang kita pelajari, jalankan atur cara adalah segerak (segerak tidak bermakna semua langkah berjalan pada masa yang sama, tetapi bermakna langkah-langkah dilaksanakan secara berurutan dalam urutan aliran kawalan ). Konsep asynchronous ialah konsep yang tidak menjamin penyegerakan Maksudnya, pelaksanaan proses tak segerak tidak lagi mempunyai hubungan berurutan dengan urutan asal.
Pemahaman mudah ialah: penyegerakan dilaksanakan mengikut susunan kod anda, pelaksanaan tak segerak tidak mengikut susunan kod dan pelaksanaan tak segerak adalah lebih cekap. Di atas ialah penjelasan tentang konsep tak segerak Seterusnya, mari kita jelaskan tak segerak dengan cara yang popular: Asynchronous ialah melancarkan sub-utas daripada utas utama untuk menyelesaikan tugas.
Bila menggunakan pengaturcaraan tak segerak
Dalam pengaturcaraan bahagian hadapan (dan kadang-kadang bahagian belakang), kami sedang berurusan dengan beberapa pendek , Operasi pantas, seperti mengira hasil 1 1, selalunya boleh diselesaikan dalam utas utama. Sebagai urutan, utas utama tidak boleh menerima berbilang permintaan pada masa yang sama. Oleh itu, apabila acara tidak berakhir, antara muka tidak akan dapat mengendalikan permintaan lain.Kini terdapat butang Jika kita menetapkan acara onclicknya kepada gelung tak terhingga, maka apabila butang itu ditekan, seluruh halaman web akan menjadi tidak bertindak balas.
Untuk mengelakkan situasi ini, kami sering menggunakan benang kanak-kanak untuk menyelesaikan perkara yang mungkin mengambil masa yang cukup lama untuk diperhatikan oleh pengguna, seperti membaca fail besar atau membuat permintaan rangkaian. Kerana benang kanak-kanak adalah bebas daripada benang utama, walaupun ia disekat, ia tidak akan menjejaskan operasi benang utama. Tetapi sub-utas mempunyai had: apabila ia dilancarkan, ia akan kehilangan penyegerakan dengan utas utama Kami tidak boleh menentukan penghujungnya Jika kami perlu memproses sesuatu selepas tamat, seperti memproses maklumat daripada pelayan, kami tidak boleh bergabung masuk ke dalam utas utama. Untuk menyelesaikan masalah ini, fungsi operasi tak segerak dalam JavaScript sering menggunakan fungsi panggil balik untuk memproses hasil tugas tak segerak.
Permintaan tak segerak dan pemuatan tak segerak JSPermintaan tak segerak: Selepas pengirim menghantar data, ia tidak menunggu untuk penerima menghantar semula respons, dan kemudian menghantar komunikasi paket data seterusnya Cara.
Contoh: Apabila pengguna mengisi sekeping maklumat, maklumat dihantar secara automatik kepada pelayan, dan kemudian pelayan bertindak balas kepada klien Semasa proses ini, pengguna masih mengisi maklumat borang, iaitu, meminta pelayan beberapa kali Menjimatkan masa pengguna dan meningkatkan pengalaman pengguna.
Pemuatan tak segerak: Js lalai dimuatkan secara serentak ("pemuatan" di sini boleh difahami sebagai penghuraian dan pelaksanaan). JS tak segerak bermakna semasa memuatkan kod JS ini, teruskan melaksanakan js berikut. Contohnya: Ambil kod ini,
Keperluan kami nampaknya sangat mudah, cuma keluarkan rentetan dalam konsol semasa halaman sedang dimuatkan, mari bercakap lebih lanjut. hanya, semasa meminta js pertama yang disediakan oleh Google, teruskan melaksanakan js berikut, iaitu untuk mencapai pemuatan tak segerak bagi js. Cadangan berkaitan:Tutorial pembelajaran javascript
Atas ialah kandungan terperinci Apakah maksud javascript asynchronous?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!