Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Mendapatkan Nilai daripada Fungsi Panggilan Balik Asynchronous dalam JavaScript?

Bagaimana untuk Mendapatkan Nilai daripada Fungsi Panggilan Balik Asynchronous dalam JavaScript?

Patricia Arquette
Lepaskan: 2024-12-29 10:40:11
asal
468 orang telah melayarinya

How to Get Values from Asynchronous Callback Functions in JavaScript?

Cara Mengendalikan Fungsi Panggilan Balik Asynchronous dalam JavaScript

Panggil balik tak segerak, seperti yang digunakan dalam fungsi geocoder.geocode, boleh menjadikannya mencabar untuk mendapatkan semula nilai daripada mereka. Isu ini diserlahkan dalam tajuk, "Bagaimana untuk mengembalikan nilai daripada fungsi panggil balik tak segerak?"

Memahami Panggilan Balik Asynchronous

Panggil balik tak segerak ialah fungsi yang dilaksanakan selepas beberapa masa yang tidak tentu. Ia biasanya digunakan apabila melakukan operasi yang tidak dapat diselesaikan dengan segera, seperti membuat permintaan rangkaian. Kerana sifat tak segeraknya, ia tidak boleh digunakan untuk mengembalikan nilai secara langsung.

Penyelesaian: Menggunakan Panggilan Balik

Untuk mendapatkan semula nilai daripada panggilan balik tak segerak, pendekatan alternatif ialah dengan lulus fungsi panggil balik kepada fungsi tak segerak. Fungsi panggil balik ini akan dilaksanakan sebaik sahaja operasi tak segerak selesai dan akan menerima nilai yang diingini sebagai parameter.

Contoh:

Dalam skrip yang disediakan, kod berikut boleh digunakan untuk mendapatkan semula nilai yang dikehendaki daripada geocoder.geocode fungsi:

function foo(address, callback) {
  geocoder.geocode({ 'address': address }, function (results, status) {
    callback(results[0].geometry.location);
  });
}

foo("address", function (location) {
  alert(location); // This is where you receive the value
});
Salin selepas log masuk

Nota:

Adalah penting untuk ambil perhatian bahawa penyelesaian ini hanya berfungsi dengan fungsi panggil balik tak segerak. Untuk fungsi segerak, nilai boleh dikembalikan secara langsung.

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Nilai daripada Fungsi Panggilan Balik Asynchronous dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan