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
length
ominaisuuden avulla. for
Silmukkaa käytetään iteroimaan jopa puoli merkkijonon.if
Ehto 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… else
lauseketta 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('');