Ebben a példában megtanul olyan JavaScript programot írni, amely ellenőrzi, hogy a karakterlánc palindróm-e vagy sem.
A példa megértéséhez ismernie kell a következő JavaScript programozási témákat:
- JavaScript karakterlánc
- JavaScript Function és Function Expressions
A karakterlánc palindrome, ha előre vagy hátra ugyanúgy olvassák. Például apa ugyanazt olvassa előre vagy hátra. Tehát az apa szó palindróma. Hasonlóképpen asszonyom is palindrom.
1. példa: Ellenőrizze a Palindrome Using for Loop elemet
// 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);
Kimenet
Írjon be egy karakterláncot: asszonyom Palindrome
A fenti programban a checkPalindrome()
függvény a felhasználótól veszi át a bemenetet.
- A karakterlánc hosszát a
length
tulajdonság segítségével számítják ki . - A
for
hurkot a karakterlánc felének ismétléséig használják. Aif
feltétellel ellenőrizzük, hogy az első és a megfelelő utolsó karakter megegyezik-e. Ez a hurok a húr feleig folytatódik. - Az iteráció során, ha a karakterlánc bármelyik karaktere a megfelelő utolsó karakterlánccal összehasonlítva nem egyenlő, a karakterlánc nem tekinthető palindrómának.
2. példa: A Palindrome ellenőrzése a beépített függvények használatával
// 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);
Kimenet
Írjon be egy karakterláncot: szia Ez nem palindróma
A fenti programban a palindromot a JavaScript-ben elérhető beépített módszerekkel ellenőrzik.
- A
split('')
módszer a karakterláncot egyedi tömb karakterekké alakítja.const arrayValues = string.split(''); // ("h", "e", "l", "l", "o")
- A
reverse()
módszer megfordítja egy tömb helyzetét.// ("o", "l", "l", "e", "h") const reverseArrayValues = arrayValues.reverse();
- A
join('')
módszer egy tömb összes elemét egy karaktersorozatba kapcsolja.const reverseString = reverseArrayValues.join(''); // "olleh"
- Ezután az
if… else
utasítás segítségével ellenőrizzük, hogy a karakterlánc és a megfordított karakterlánc egyenlő-e. Ha egyenlőek, akkor a húr palindrom.
Megjegyzés : A több kódsor csökkenthető és egy sorba írható:
const reverseString = string.split('').reverse().join('');