Pertanyaan yang diberi tag «promise»

Janji adalah taktik untuk komputasi yang ditangguhkan, cocok untuk beberapa gaya konkurensi: konkurensi untai dan loop acara untuk komputasi lokal, dan pesan jarak jauh yang sinkron dan asinkron. Janji merupakan hasil akhirnya dari operasi asinkron. Cara utama bekerja dengan janji adalah melalui metode yang mendaftarkan transformasi dari nilai akhirnya atau alasan kegagalan janji menjadi janji baru.


20
Menggunakan async / tunggu dengan forEach loop
Apakah ada masalah dengan menggunakan async/ awaitdalam satu forEachlingkaran? Saya mencoba untuk mengulang melalui array file dan awaitpada isi setiap file. import fs from 'fs-promise' async function printFiles () { const files = await getFilePaths() // Assume this works fine files.forEach(async (file) => { const contents = await fs.readFile(file, 'utf8') …





10
jQuery ditangguhkan dan dijanjikan - .then () vs .done ()
Saya telah membaca tentang jQuery ditangguhkan dan janji dan saya tidak bisa melihat perbedaan antara menggunakan .then()& .done()untuk panggilan balik yang sukses. Saya tahu Eric Hynds menyebutkan itu .done()dan .success()memetakan ke fungsi yang sama tapi saya kira begitu juga .then()karena semua panggilan balik semua dipanggil pada penyelesaian operasi yang sukses. …

10
Bukankah janji hanya panggilan balik?
Saya telah mengembangkan JavaScript selama beberapa tahun dan saya tidak mengerti apa-apa tentang janji. Sepertinya yang saya lakukan hanyalah perubahan: api(function(result){ api2(function(result2){ api3(function(result3){ // do work }); }); }); Yang mana saya bisa menggunakan pustaka seperti async , dengan sesuatu seperti: api().then(function(result){ api2().then(function(result2){ api3().then(function(result3){ // do work }); }); }); …

18
Tunggu sampai semua janji selesai meskipun beberapa ditolak
Katakanlah saya memiliki satu set Promises yang membuat permintaan jaringan, yang salah satunya akan gagal: // http://does-not-exist will throw a TypeError var arr = [ fetch('index.html'), fetch('http://does-not-exist') ] Promise.all(arr) .then(res => console.log('success', res)) .catch(err => console.log('error', err)) // This is executed Katakanlah saya ingin menunggu sampai semua ini selesai, terlepas …

5
Janji JavaScript - tolak vs. lempar
Saya telah membaca beberapa artikel tentang hal ini, tetapi masih belum jelas bagi saya jika ada perbedaan antara Promise.rejectvs melempar kesalahan. Sebagai contoh, Menggunakan Promise.reject return asyncIsPermitted() .then(function(result) { if (result === true) { return true; } else { return Promise.reject(new PermissionDenied()); } }); Menggunakan lemparan return asyncIsPermitted() .then(function(result) { …

9
Apa itu std :: janji?
Saya cukup akrab dengan C ++ 11's std::thread, std::asyncdan std::futurekomponen (misalnya lihat jawaban ini ), yang lurus ke depan. Namun, saya tidak dapat memahami apa std::promiseitu, apa yang dilakukannya dan dalam situasi apa yang paling baik digunakan. Dokumen standar itu sendiri tidak mengandung banyak informasi di luar sinopsis kelasnya, dan …


5
Apa perbedaan antara mengembalikan nilai atau Janji. Menanggapi sejak saat itu ()
Apa perbedaan antara: new Promise(function(res, rej) { res("aaa"); }) .then(function(result) { return "bbb"; }) .then(function(result) { console.log(result); }); Jalankan cuplikan kodeSembunyikan hasilLuaskan cuplikan dan ini: new Promise(function(res, rej) { res("aaa"); }) .then(function(result) { return Promise.resolve("bbb"); }) .then(function(result) { console.log(result); }); Jalankan cuplikan kodeSembunyikan hasilLuaskan cuplikan Saya bertanya karena saya mendapatkan …


20
Selesaikan Javascript Promise di luar lingkup fungsi
Saya telah menggunakan ES6 Promise. Biasanya, Janji dibuat dan digunakan seperti ini new Promise(function(resolve, reject){ if (someCondition){ resolve(); } else { reject(); } }); Tetapi saya telah melakukan sesuatu seperti di bawah ini untuk mengambil tekad di luar demi fleksibilitas. var outsideResolve; var outsideReject; new Promise(function(resolve, reject) { outsideResolve = …

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.