Program JavaScript do sprawdzania, czy ciąg jest palindromem, czy nie

W tym przykładzie nauczysz się pisać program JavaScript, który sprawdza, czy łańcuch jest palindromem, czy nie.

Aby zrozumieć ten przykład, powinieneś znać następujące tematy programowania JavaScript:

  • Ciąg JavaScript
  • Funkcje i wyrażenia funkcyjne JavaScript

Łańcuch jest palindromem, jeśli jest czytany tak samo od przodu lub od tyłu. Na przykład tata czyta to samo od przodu lub do tyłu. Zatem słowo tata to palindrom. Podobnie pani jest również palindromem.

Przykład 1: Sprawdź palindrom za pomocą pętli

 // 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);

Wynik

 Wpisz ciąg: pani To jest palindrom

W powyższym programie checkPalindrome()funkcja pobiera dane od użytkownika.

  • Długość łańcucha jest obliczana za pomocą lengthwłaściwości.
  • forPętla jest używany do iteracji aż do połowy łańcucha. ifStan służy do sprawdzenia, czy pierwsze i ostatnie odpowiednie znaki są takie same. Ta pętla trwa do połowy struny.
  • Jeśli podczas iteracji jakikolwiek znak łańcucha w porównaniu z odpowiadającym mu ostatnim łańcuchem nie jest równy, łańcuch nie jest uznawany za palindrom.

Przykład 2: Sprawdź Palindrome za pomocą wbudowanych funkcji

 // 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);

Wynik

 Wpisz ciąg: witaj To nie jest palindrom

W powyższym programie palindrom sprawdzany jest za pomocą wbudowanych metod dostępnych w JavaScript.

  • split('')Metoda konwertuje ciąg znaków do poszczególnych tablic.
     const arrayValues = string.split(''); // ("h", "e", "l", "l", "o")
  • reverse()Sposób odwrócenie pozycji w tablicy.
     // ("o", "l", "l", "e", "h") const reverseArrayValues = arrayValues.reverse();
  • join('')Sposób łączy wszystkie elementy tablicy w ciąg.
     const reverseString = reverseArrayValues.join(''); // "olleh"
  • Następnie if… elseinstrukcja jest używana do sprawdzenia, czy łańcuch i odwrócony łańcuch są równe. Jeśli są równe, łańcuch jest palindromem.

Uwaga : wiele wierszy kodu można zmniejszyć i zapisać w jednym wierszu:

 const reverseString = string.split('').reverse().join('');

Interesujące artykuły...