Σε αυτό το παράδειγμα, θα μάθετε να γράφετε ένα πρόγραμμα JavaScript που ελέγχει εάν η συμβολοσειρά είναι palindrome ή όχι.
Για να κατανοήσετε αυτό το παράδειγμα, θα πρέπει να γνωρίζετε τις ακόλουθες ενότητες προγραμματισμού JavaScript:
- Συμβολοσειρά JavaScript
- JavaScript Function and Function Expressions
Μια συμβολοσειρά είναι ένα palindrome εάν διαβάζεται το ίδιο από μπροστά ή πίσω. Για παράδειγμα, ο μπαμπάς διαβάζει το ίδιο είτε προς τα εμπρός είτε προς τα πίσω. Έτσι, η λέξη μπαμπάς είναι ένα περίφημα. Ομοίως, η κυρία είναι επίσης ένα περίγραμμα.
Παράδειγμα 1: Ελέγξτε το Palindrome χρησιμοποιώντας το Loop
// program to check if the string is palindrome or not function checkPalindrome(str) ( // find the length of a string const len = string.length; // loop through half of the string for (let i = 0; i < len / 2; i++) ( // check if first and last string are same if (string(i) !== string(len - 1 - i)) ( return 'It is not a palindrome'; ) ) return 'It is a palindrome'; ) // take input const string = prompt('Enter a string: '); // call the function const value = checkPalindrome(string); console.log(value);
Παραγωγή
Εισαγάγετε μια συμβολοσειρά: κυρία Είναι ένα περίγραμμα
Στο παραπάνω πρόγραμμα, η checkPalindrome()
συνάρτηση λαμβάνει είσοδο από τον χρήστη.
- Το μήκος της συμβολοσειράς υπολογίζεται χρησιμοποιώντας την
length
ιδιότητα. - Ο
for
βρόχος χρησιμοποιείται για να επαναλάβει μέχρι το ήμισυ της συμβολοσειράς. Ηif
συνθήκη χρησιμοποιείται για να ελέγξει εάν οι πρώτοι και οι αντίστοιχοι τελευταίοι χαρακτήρες είναι οι ίδιοι. Αυτός ο βρόχος συνεχίζεται μέχρι το μισό της συμβολοσειράς. - Κατά τη διάρκεια της επανάληψης, εάν οποιοσδήποτε χαρακτήρας της συμβολοσειράς, σε σύγκριση με την αντίστοιχη τελευταία συμβολοσειρά δεν είναι ίσος, η συμβολοσειρά δεν θεωρείται παλινδρομή.
Παράδειγμα 2: Ελέγξτε το Palindrome χρησιμοποιώντας ενσωματωμένες συναρτήσεις
// program to check if the string is palindrome or not function checkPalindrome(str) ( // convert string to an array const arrayValues = string.split(''); // reverse the array values const reverseArrayValues = arrayValues.reverse(); // convert array to string const reverseString = reverseArrayValues.join(''); if(string == reverseString) ( console.log('It is a palindrome'); ) else ( console.log('It is not a palindrome'); ) ) //take input const string = prompt('Enter a string: '); checkPalindrome(string);
Παραγωγή
Εισαγάγετε μια συμβολοσειρά: γεια Δεν είναι παλέντο
Στο παραπάνω πρόγραμμα, το palindrome ελέγχεται χρησιμοποιώντας τις ενσωματωμένες μεθόδους που είναι διαθέσιμες σε JavaScript.
- Η
split('')
μέθοδος μετατρέπει τη συμβολοσειρά σε μεμονωμένους χαρακτήρες πίνακα.const arrayValues = string.split(''); // ("h", "e", "l", "l", "o")
- Η
reverse()
μέθοδος αντιστρέφει τη θέση σε έναν πίνακα.// ("o", "l", "l", "e", "h") const reverseArrayValues = arrayValues.reverse();
- Η
join('')
μέθοδος ενώνει όλα τα στοιχεία ενός πίνακα σε μια συμβολοσειρά.const reverseString = reverseArrayValues.join(''); // "olleh"
- Στη συνέχεια, η
if… else
δήλωση χρησιμοποιείται για να ελέγξει αν η συμβολοσειρά και η αντίστροφη συμβολοσειρά είναι ίσες. Εάν είναι ίσες, η συμβολοσειρά είναι ένα palindrome.
Σημείωση : Οι πολλαπλές γραμμές κώδικα μπορούν να μειωθούν και να γραφτούν σε μία γραμμή:
const reverseString = string.split('').reverse().join('');