I det här exemplet lär du dig att skriva ett JavaScript-program som kontrollerar om strängen är palindrom eller inte.
För att förstå detta exempel bör du ha kunskap om följande JavaScript-programmeringsämnen:
- JavaScript-sträng
- JavaScript-funktion och funktionsuttryck
En sträng är en palindrom om den läses samma framåt eller bakåt. Till exempel läser pappa detsamma antingen framåt eller bakåt. Så ordet pappa är ett palindrom. På samma sätt är fru också ett palindrom.
Exempel 1: Kontrollera palindrom med hjälp av 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);
Produktion
Ange en sträng: fru Det är ett palindrom
I programmet ovan checkPalindrome()
tar funktionen inmatning från användaren.
- Strängens längd beräknas med hjälp av
length
egenskapen. - Den
for
slinga används för att iterera upp till hälften av strängen. Detif
förhållanden används för att kontrollera om den första och den motsvarande sista tecknen är desamma. Denna slinga fortsätter till halva strängen. - Under strängen, om någon karaktär i strängen, jämfört med motsvarande sista sträng inte är lika, anses strängen inte vara en palindrom.
Exempel 2: Kontrollera Palindrome med hjälp av inbyggda funktioner
// 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);
Produktion
Ange en sträng: hej Det är inte ett palindrom
I programmet ovan kontrolleras palindromen med hjälp av de inbyggda metoderna som finns tillgängliga i JavaScript.
- Den
split('')
metod omvandlar strängen i individuella array tecken.const arrayValues = string.split(''); // ("h", "e", "l", "l", "o")
- Den
reverse()
metod reverserar position i en array.// ("o", "l", "l", "e", "h") const reverseArrayValues = arrayValues.reverse();
- Den
join('')
metod förenar alla delar av en array till en sträng.const reverseString = reverseArrayValues.join(''); // "olleh"
- Därefter används
if… else
uttalandet för att kontrollera om strängen och den omvända strängen är lika. Om de är lika är strängen en palindrom.
Obs : De flera kodraderna kan reduceras och skrivas på en rad:
const reverseString = string.split('').reverse().join('');