Rumah > hujung hadapan web > tutorial js > Patutkah Fungsi Pembina Mengembalikan Janji?

Patutkah Fungsi Pembina Mengembalikan Janji?

Patricia Arquette
Lepaskan: 2024-12-18 22:37:19
asal
786 orang telah melayarinya

Should Constructor Functions Return Promises?

Fungsi dan Janji Pembina: Pendekatan Praktikal

Pertimbangkan senario mencipta fungsi pembina untuk platform blog dengan pelbagai operasi tak segerak. Timbul persoalan: adakah dinasihatkan agar fungsi pembina mengembalikan Janji dan bukannya objek yang ingin dicipta?

Kebaikan Mengembalikan Janji:

  • Permulaan Terjamin: Janji membenarkan pengguna merantai kemudian pengendali yang dilaksanakan selepas pembina selesai melaksanakan. Ini memastikan objek dimulakan sepenuhnya sebelum mana-mana kod cuba mengaksesnya.

Keburukan Mengembalikan Janji:

  • Gangguan Operator baharu: Janji memecahkan gelagat tradisional fungsi pembina, yang mengembalikan objek yang baru dibuat. Ini boleh membawa kepada kekeliruan dan kemungkinan ralat.
  • Akses Segera Terhad: Janji yang dikembalikan bermakna objek yang dicipta oleh pembina tidak tersedia serta-merta. Pengguna mungkin menghadapi masalah apabila menganggap ia boleh diakses terus selepas pembinaan.

Pendekatan Alternatif:

Daripada mengembalikan Janji daripada pembina, pertimbangkan untuk menggunakan satu daripada strategi berikut:

  • Permulaan Berasingan Kaedah: Cipta kaedah yang secara eksplisit memulakan objek selepas pembinaan. Ini membolehkan pembina mengembalikan objek dengan serta-merta, sambil memastikan ia dimulakan sepenuhnya sebelum digunakan:
var engine = new Engine({path: '/path/to/posts'});
engine.init().then(function() {
  // Object is now initialized.
});
Salin selepas log masuk
  • Fungsi Kilang Statik: Gunakan fungsi kilang statik untuk cipta dan mulakan objek secara tidak segerak. Pendekatan ini memberikan fleksibiliti yang lebih besar dalam pemerolehan data dan memudahkan pembina:
Engine.create({path: '/path/to/posts'}).then(function(engine) {
  // Object is now initialized.
});
Salin selepas log masuk

Kesimpulan:

Sambil mengembalikan Janji daripada fungsi pembina boleh menawarkan tertentu faedah, ia secara amnya dianggap sebagai amalan yang tidak baik. Dengan mengikut pendekatan alternatif yang dicadangkan, anda boleh mencapai kefungsian yang diingini tanpa mengganggu gelagat pembina yang diharapkan.

Atas ialah kandungan terperinci Patutkah Fungsi Pembina Mengembalikan Janji?. 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