JavaScript-ohjelma sen tarkistamiseksi, onko merkkijono palindromi vai ei

Tässä esimerkissä opit kirjoittamaan JavaScript-ohjelman, joka tarkistaa, onko merkkijono palindromi vai ei.

Tämän esimerkin ymmärtämiseksi sinulla on oltava tieto seuraavista JavaScript-ohjelmoinnin aiheista:

  • JavaScript-merkkijono
  • JavaScript-funktio- ja funktiolausekkeet

Merkkijono on palindromi, jos se luetaan samalla tavalla eteenpäin tai taaksepäin. Esimerkiksi isä lukee samaa joko eteenpäin tai taaksepäin. Joten sana isä on palindromi. Vastaavasti rouva on myös palindromi.

Esimerkki 1: Tarkista Palindromen käyttö silmukalle

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

Tuotos

 Kirjoita merkkijono: rouva Se on palindromi

Yllä olevassa ohjelmassa checkPalindrome()toiminto ottaa käyttäjän panoksen.

  • Merkkijonon pituus lasketaan lengthominaisuuden avulla.
  • forSilmukkaa käytetään iteroimaan jopa puoli merkkijonon. ifEhto käytetään tarkistamaan, onko ensimmäisen ja vastaavat viimeistä merkkiä ovat samat. Tämä silmukka jatkuu merkkijonon puoliskoon asti.
  • Jos jonon mikä tahansa merkki ei ole iteroinnin aikana vastaavaan viimeiseen merkkijonoonsa sama, merkkijonoa ei pidetä palindromina.

Esimerkki 2: Tarkista Palindrome sisäänrakennetuilla toiminnoilla

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

Tuotos

 Kirjoita merkkijono: hei Se ei ole palindromi

Yllä olevassa ohjelmassa palindromi tarkistetaan sisäänrakennetuilla menetelmillä, jotka ovat käytettävissä JavaScriptiä.

  • split('')Menetelmä muuntaa merkkijonon yksittäinen array merkkiä.
     const arrayValues = string.split(''); // ("h", "e", "l", "l", "o")
  • reverse()Menetelmä kääntää asema ryhmäksi.
     // ("o", "l", "l", "e", "h") const reverseArrayValues = arrayValues.reverse();
  • join('')Menetelmä liittyy kaikki elementit array osaksi merkkijono.
     const reverseString = reverseArrayValues.join(''); // "olleh"
  • Sitten if… elselauseketta käytetään tarkistamaan, ovatko merkkijono ja käännetty merkkijono yhtä suuria. Jos ne ovat yhtä suuret, merkkijono on palindromi.

Huomaa : Koodiriviä voidaan pienentää ja kirjoittaa yhdelle riville:

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

Mielenkiintoisia artikkeleita...