JavaScript-program för att kontrollera om en sträng är palindrom eller inte

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 lengthegenskapen.
  • Den forslinga används för att iterera upp till hälften av strängen. Det iffö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… elseuttalandet 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('');

Intressanta artiklar...