Bu örnekte, dizenin palindrome olup olmadığını kontrol eden bir JavaScript programı yazmayı öğreneceksiniz.
Bu örneği anlamak için, aşağıdaki JavaScript programlama konuları hakkında bilgi sahibi olmalısınız:
- JavaScript Dizesi
- JavaScript İşlev ve İşlev İfadeleri
Bir string, aynı şekilde ileriye veya geriye doğru okunursa, bir palindromdur. Örneğin, baba aynı şeyi ileri ya da geri okur. Yani baba kelimesi bir palindromdur. Aynı şekilde hanımefendi de bir palindromdur.
Örnek 1: Döngü için Kullanarak Palindrome'u Kontrol Edin
// 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);
Çıktı
Bir dize girin: madam Bu bir palindrom
Yukarıdaki programda, checkPalindrome()
işlev kullanıcıdan girdi alır.
- Dizenin uzunluğu
length
özellik kullanılarak hesaplanır . for
Döngü dize yarısına kadar yinelemek için kullanılır.if
Koşul birinci ve karşılık gelen son karakterler aynı olup olmadığını kontrol etmek için kullanılır. Bu döngü ipin yarısına kadar devam eder.- Yineleme sırasında, dizenin herhangi bir karakteri, karşılık gelen son dizesiyle karşılaştırıldığında eşit değilse, dizge bir palindrom olarak kabul edilmez.
Örnek 2: Yerleşik İşlevleri kullanarak Palindrome'u kontrol edin
// 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);
Çıktı
Bir dize girin: merhaba Bu bir palindrom değil
Yukarıdaki programda, palindrom, JavaScript'te bulunan yerleşik yöntemler kullanılarak kontrol edilir.
split('')
Yöntem tek tek dizi karakterleri içine dize dönüştürür.const arrayValues = string.split(''); // ("h", "e", "l", "l", "o")
reverse()
Yöntem, bir dizi pozisyonu tersine çevirir.// ("o", "l", "l", "e", "h") const reverseArrayValues = arrayValues.reverse();
join('')
Yöntem, bir dizeye dizinin tüm elemanlarını birleştirir.const reverseString = reverseArrayValues.join(''); // "olleh"
- Daha sonra
if… else
ifade, dizginin ve ters çevrilmiş dizenin eşit olup olmadığını kontrol etmek için kullanılır. Eşit iseler, ip bir palindromdur.
Not : Birden fazla kod satırı tek satırda kısaltılabilir ve yazılabilir:
const reverseString = string.split('').reverse().join('');