Pengulangan JavaScript (dengan Contoh)

Dalam tutorial ini, anda akan belajar mengenai pengulangan dalam JavaScript dengan bantuan contoh.

Rekursi adalah proses memanggil dirinya sendiri. Fungsi yang memanggil dirinya disebut fungsi rekursif.

Sintaks untuk fungsi rekursif adalah:

 function recurse() ( // function code recurse(); // function code ) recurse();

Di sini, recurse()fungsi tersebut adalah fungsi rekursif. Ia memanggil dirinya di dalam fungsi.

Mengendalikan rekursi dalam JavaScript

Fungsi rekursif mesti mempunyai syarat untuk berhenti memanggil dirinya sendiri. Jika tidak, fungsi tersebut dipanggil selama-lamanya.

Setelah syarat dipenuhi, fungsi berhenti memanggilnya sendiri. Ini dipanggil keadaan asas.

Untuk mengelakkan pengulangan yang tidak terhingga, anda dapat menggunakan pernyataan jika… lain (atau pendekatan serupa) di mana satu cabang membuat panggilan rekursif, dan yang lain tidak.

Jadi, secara amnya kelihatan seperti ini.

 function recurse() ( if(condition) ( recurse(); ) else ( // stop calling recurse() ) ) recurse();

Contoh ringkas fungsi rekursif adalah mengira nilai menjadi 1.

Contoh 1: Mencetak Nombor

 // program to count down numbers to 1 function countDown(number) ( // display the number console.log(number); // decrease the number value const newNumber = number - 1; // base case if (newNumber> 0) ( countDown(newNumber); ) ) countDown(4);

Pengeluaran

 4 3 2 1

Dalam program di atas, pengguna memberikan nombor sebagai argumen ketika memanggil fungsi.

Dalam setiap iterasi, nilai angka diturunkan 1 dan fungsi countDown()dipanggil hingga bilangannya positif. Di sini, newNumber> 0adalah syarat asas.

Panggilan rekursif ini dapat dijelaskan dalam langkah-langkah berikut:

 countDown (4) prints 4 dan count countDown (3) countDown (3) prints 3 and call countDown (2) countDown (2) prints 2 and call countDown (1) countDown (1) mencetak 1 dan jumlah panggilanDown (0)

Apabila nombor mencapai 0 , keadaan asas dipenuhi, dan fungsi tidak dipanggil lagi.

Contoh 2: Cari Factorial

 // program to find the factorial of a number function factorial(x) ( // if number is 0 if (x === 0) ( return 1; ) // if number is positive else ( return x * factorial(x - 1); ) ) const num = 3; // calling factorial() if num is non-negative if (num> 0) ( let result = factorial(num); console.log(`The factorial of $(num) is $(result)`); )

Pengeluaran

 Faktor faktor 3 adalah 6

Apabila anda memanggil fungsi factorial()dengan bilangan bulat positif, ia akan memanggilnya secara berulang secara berkala dengan mengurangkan nombor.

Proses ini berterusan sehingga bilangannya menjadi 1 . Kemudian apabila angka mencapai 0 , 1 dikembalikan.

Mengendalikan pengulangan JavaScript di Factorial

Panggilan rekursif ini dapat dijelaskan dalam langkah-langkah berikut:

 faktorial (3) mengembalikan 3 * faktorial (2) faktorial (2) mengembalikan 3 * 2 * faktorial (1) memulangkan 3 * 2 * 1 * faktorial (0) faktorial (0) mengembalikan 3 * 2 * 1 * 1

Artikel menarik...