Rumah >hujung hadapan web >tutorial js >Kawal janji anda dengan JavaScript

Kawal janji anda dengan JavaScript

WBOY
WBOYasal
2024-08-28 06:06:32370semak imbas

Controla tus promesa con JavaScript

Mengendalikan operasi tak segerak dalam JavaScript adalah penting untuk mencipta aplikasi yang cekap dan lancar. Di sinilah janji memainkan peranan. Pernahkah anda terfikir bagaimana untuk memastikan kod anda tidak disekat sementara menunggu respons daripada pelayan? Atau mungkin, bagaimana anda boleh melaksanakan tugas tertentu hanya selepas yang lain selesai? Nah, janji dalam JavaScript ialah penyelesaian yang anda cari.

Dalam artikel ini, kami akan meneroka apa itu janji, cara ia berfungsi dan cara ia boleh meningkatkan aliran apl anda. Mari selami butirannya.

Apakah Janji dalam JavaScript?

Janji dalam JavaScript ialah objek yang mewakili penyiapan (atau kegagalan) operasi tak segerak dan nilai yang terhasil. Dalam erti kata lain, janji ialah perantara yang mengendalikan pelaksanaan kod tak segerak dan membolehkan anda bekerja dengan nilai yang belum diketahui semasa menulis kod.

Ciri-ciri utama janji:

  • Belum selesai: Keadaan awal, di mana operasi tak segerak belum selesai.
  • Diselesaikan: Operasi tak segerak telah berjaya diselesaikan dan keputusan telah diperolehi.
  • Ditolak: Operasi tak segerak gagal dan sebab atau ralat disediakan.

Kitaran hayat janji ini membolehkan operasi tak segerak dikendalikan dengan lebih jelas dan cekap, mengelakkan "neraka panggilan balik".

Mengapa Menggunakan Janji?

Janji amat berguna apabila bekerja dengan permintaan kepada pelayan. Bayangkan anda membuat permintaan HTTP untuk mendapatkan data. Masa menunggu boleh berbeza-beza dan anda tidak mahu apl anda membeku semasa respons tiba. Menggunakan janji membolehkan kod anda terus dilaksanakan tanpa menunggu, yang meningkatkan prestasi keseluruhan aplikasi anda.

Selain itu, janji-janji itu terpakai dalam kes lain, seperti:

  • Manipulasi Fail: Anda boleh menunggu sehingga fail dimuat naik atau diproses sebelum melaksanakan tugasan lain.
  • Pengubahsuaian DOM: Jika anda perlu memastikan bahawa perubahan antara muka tertentu diselesaikan sebelum meneruskan operasi lain.

Janji juga membolehkan anda merangkaikan berbilang operasi tak segerak dengan cara yang lebih mudah dibaca dan diselenggara.

Cara Menggunakan Janji dalam JavaScript

Untuk mencipta janji, pembina Promise digunakan, menghantar fungsi dengan dua argumen: selesaikan dan tolak.

let miPromesa = new Promise((resolve, reject) => {
    // Simulación de una operación asíncrona
    let exito = true;

    if (exito) {
        resolve("Operación exitosa!");
    } else {
        reject("Ocurrió un error.");
    }
});

Untuk mengendalikan hasil janji, kaedah .then() dan .catch() digunakan:

miPromesa
    .then((mensaje) => {
        console.log(mensaje); // "Operación exitosa!"
    })
    .catch((error) => {
        console.error(error); // "Ocurrió un error."
    });`

Kelebihan Janji berbanding Panggilan Balik

Sebelum janji diperkenalkan, pengendalian operasi tak segerak dilakukan terutamanya dengan panggilan balik. Walau bagaimanapun, ini boleh menyebabkan kod yang sukar untuk diikuti dan dikekalkan, terutamanya apabila berbilang panggilan balik disarang, dikenali sebagai "neraka panggilan balik".

Kelebihan janji:

  • Kebolehbacaan: Kod lebih mudah dibaca dan diikuti.
  • Penyelenggaraan: Memudahkan pengecaman dan pengendalian ralat.
  • Perantaian: Anda boleh merantai berbilang operasi tak segerak dengan cara yang lebih teratur.

Janji lwn Async/Await

Walaupun janji telah menjadi peningkatan yang ketara berbanding panggilan balik, pengenalan async/wait dalam ECMAScript 2017 telah memudahkan lagi sintaks untuk mengendalikan operasi tak segerak.

async function obtenerDatos() {
    try {
        let response = await fetch('https://jsonplaceholder.typicode.com/posts/1');
        let data = await response.json();
        console.log(data);
    } catch (error) {
        console.error('Error:', error);
    }
}

Dengan async/wait, kod menjadi lebih linear, serupa dengan kod segerak, tetapi masih tak segerak di bawah hud. Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa async/wait masih menggunakan janji pada terasnya, jadi memahami cara janji berfungsi adalah kunci untuk menguasai penggunaan async/wait.

Kesimpulan

Janji dalam JavaScript ialah alat yang berkuasa untuk mengendalikan operasi tak segerak tanpa merumitkan kod anda dengan berbilang panggilan balik. Daripada permintaan kepada pelayan kepada tugas yang lebih kompleks dalam aplikasi anda, janji membolehkan anda menulis dengan lebih bersih, lebih mudah dibaca dan lebih mudah untuk mengekalkan kod.

Tidak kira jika anda sedang membina aplikasi web yang ringkas atau sistem yang lebih kompleks, mempelajari cara mengendalikan janji adalah penting untuk mengoptimumkan prestasi kod anda.

Atas ialah kandungan terperinci Kawal janji anda dengan JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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