Adakah Menggunakan `.then(function(a){ return a; })` merupakan No-Op for Promises?

Mary-Kate Olsen
Lepaskan: 2024-11-14 10:40:02
asal
920 orang telah melayarinya

Is Using `.then(function(a){ return a; })` a No-Op for Promises?

Adakah ".then(function(a){ return a; })" merupakan No-Op for Promises?

.then(function (a) { return a; }) memang nampaknya tidak boleh digunakan dalam konteks Janji. Seperti yang dijelaskan dalam tutorial yang anda rujuk, Promises membenarkan perangkaian operasi. Setiap operasi dalam rantai boleh dianggap sebagai fungsi yang mengambil Promise sebagai input dan mengembalikan Promise sebagai output.

Tujuan kaedah ".then(...)" adalah untuk menentukan tindakan apa hendaklah diambil apabila Janji sebelumnya diselesaikan. Dalam kes ini, fungsi yang dihantar kepada ".then(...)" hanya mengembalikan nilai input tanpa sebarang transformasi. Ini bermakna bahawa output operasi ".then(...)" adalah sama dengan input, dengan berkesan menjadikannya no-op.

Untuk menjawab soalan anda secara terus, ya, kedua-dua fungsi memanggil yang anda berikan, dengan dan tanpa panggilan ".then(...)", adalah sama. Kedua-duanya akan mengembalikan Janji yang sama dan boleh digunakan dengan cara yang sama.

Sebab mengapa pengarang mungkin menulis kod dengan panggilan ".then(...)" adalah soal keutamaan peribadi atau salah faham. Secara umumnya tidak dianggap sebagai amalan terbaik untuk memasukkan kod yang tidak diperlukan, terutamanya apabila ia boleh membawa kepada kekeliruan.

Oleh itu, adalah disyorkan untuk meninggalkan panggilan ".then(function (a) { return a; })" apabila ia sebenarnya tidak melakukan sebarang transformasi berguna pada nilai Janji.

Atas ialah kandungan terperinci Adakah Menggunakan `.then(function(a){ return a; })` merupakan No-Op for Promises?. 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