V tomto príklade sa naučíte písať program v jazyku JavaScript, ktorý kontroluje, či je reťazec palindróm alebo nie.
Aby ste pochopili tento príklad, mali by ste mať znalosti nasledujúcich tém programovania v jazyku JavaScript:
- Reťazec JavaScript
- Funkcia JavaScript a výrazy funkcií
Reťazec je palindróm, ak sa číta rovnako smerom dopredu alebo dozadu. Napríklad otec číta to isté spredu alebo dozadu. Slovo otec je teda palindróm. Podobne je madam tiež palindróm.
Príklad 1: Skontrolujte použitie Palindromu na slučku
// 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);
Výkon
Zadajte reťazec: madam Je to palindróm
Vo vyššie uvedenom programe checkPalindrome()
prijíma funkcia vstup od používateľa.
- Dĺžka reťazca sa počíta pomocou
length
vlastnosti. for
Slučka sa používa na opakovať až do polovice reťazca.if
Podmienka sa používa pre overenie, či prvý a príslušné posledné znaky sú rovnaké. Táto slučka pokračuje až do polovice šnúrky.- Ak sa počas iterácie niektorý znak reťazca v porovnaní so zodpovedajúcim posledným reťazcom nerovná, reťazec sa nepovažuje za palindróm.
Príklad 2: Skontrolujte Palindrome pomocou zabudovaných funkcií
// 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);
Výkon
Zadajte reťazec: ahoj Nie je to palindróm
Vo vyššie uvedenom programe sa palindróm kontroluje pomocou zabudovaných metód dostupných v JavaScripte.
split('')
Metóda prevedie reťazec na jednotlivé znaky poľa.const arrayValues = string.split(''); // ("h", "e", "l", "l", "o")
reverse()
Metóda obráti pozíciu v matici.// ("o", "l", "l", "e", "h") const reverseArrayValues = arrayValues.reverse();
join('')
Metóda spája všetky prvky poľa do reťazca.const reverseString = reverseArrayValues.join(''); // "olleh"
- Potom sa pomocou
if… else
príkazu skontroluje, či sú reťazec a obrátený reťazec rovnaké. Ak sú rovnaké, reťazec je palindróm.
Poznámka : Viaceré riadky kódu je možné zmenšiť a zapísať do jedného riadku:
const reverseString = string.split('').reverse().join('');