Rumah >hujung hadapan web >tutorial js >Perbincangan terperinci tentang Rekursi dalam JavaScript
Rekursi ialah teknik di mana fungsi memanggil dirinya sendiri. Ia adalah corak pengaturcaraan yang membahagikan masalah itu kepada yang lebih kecil untuk menyelesaikan masalah yang lebih besar. Menggunakan rekursi dalam JavaScript kita boleh melakukan perkara seperti gelung atau lelaran, tetapi rekursi boleh menjadi lebih mudah dan lebih telus untuk menyelesaikan beberapa masalah.
Rekursi mempunyai dua bahagian utama:
cth:
Faktorial ialah hasil darab semua integer positif daripada nombor itu hingga 1.
function factorial(n) { // Base case: n যদি 1 হয়, তাহলে 1 রিটার্ন করো if (n === 1) { return 1; } // Recursive case: n * factorial(n-1) return n * factorial(n - 1); } console.log(factorial(5)); // Output: 120
Di sini, fungsi faktorial memanggil dirinya sendiri sehingga n menjadi 1. Apabila n ialah 1, fungsi itu tidak lagi memanggil dirinya sendiri dan mengembalikan 1. Keputusan ini dikembalikan secara beransur-ansur melalui panggilan sebelumnya dan panggilan asal mengembalikan 120 sebagai hasil akhir.
Apabila faktorial(5) dipanggil, ia akan mula memanggil 5 * faktorial(4) dan seterusnya sehingga faktorial(0) di mana keadaan kes asas dipenuhi.
Siri Fibonacci ialah siri nombor di mana dua nombor pertama ialah 0 dan 1, dan setiap nombor berikutnya ialah hasil tambah dua nombor sebelumnya. Contohnya, 0, 1, 1, 2, 3, 5, 8, …
function fibonacci(n) { // Base cases: n যদি 0 বা 1 হয়, সরাসরি n রিটার্ন করো if (n === 0 || n === 1) { return n; } // Recursive case: fibonacci(n-1) + fibonacci(n-2) return fibonacci(n - 1) + fibonacci(n - 2); } console.log(fibonacci(6)); // Output: 8
Penjelasan:
Jawapan Penjelasan:
এভাবে fibonacci(6) এর মান দাঁড়ায় 8, যা 6-তম ফিবোনাচি সংখ্যা।
javascriptCopy code function traverseTree(node) { console.log(node.value); node.children.forEach(child => traverseTree(child)); } const tree = { value: 1, children: [ { value: 2, children: [] }, { value: 3, children: [ { value: 4, children: [] }, { value: 5, children: [] } ] } ] }; traverseTree(tree); // Output: // 1 // 2 // 3 // 4 // 5
Atas ialah kandungan terperinci Perbincangan terperinci tentang Rekursi dalam JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!