Trong ví dụ này, bạn sẽ học cách viết một chương trình JavaScript để kiểm tra xem chuỗi có phải là palindrome hay không.
Để hiểu ví dụ này, bạn nên có kiến thức về các chủ đề lập trình JavaScript sau:
- Chuỗi JavaScript
- Hàm JavaScript và biểu thức hàm
Một chuỗi là một palindrome nếu nó được đọc giống nhau từ phía trước hoặc phía sau. Ví dụ, bố đọc giống nhau từ phía trước hoặc phía sau. Vì vậy, từ cha là một palindrome. Tương tự, madam cũng là một palindrome.
Ví dụ 1: Kiểm tra Palindrome bằng cách sử dụng cho vòng lặp
// 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);
Đầu ra
Nhập một chuỗi: madam Nó là một palindrome
Trong chương trình trên, checkPalindrome()
hàm nhận đầu vào từ người dùng.
- Độ dài của chuỗi được tính bằng thuộc
length
tính. - Các
for
vòng lặp được sử dụng để lặp lên đến nửa của chuỗi. Điềuif
kiện được sử dụng để kiểm tra xem ký tự đầu tiên và ký tự cuối cùng tương ứng có giống nhau hay không. Vòng lặp này tiếp tục cho đến nửa của chuỗi. - Trong quá trình lặp, nếu bất kỳ ký tự nào của chuỗi, khi so sánh với chuỗi cuối cùng tương ứng của nó không bằng nhau, thì chuỗi đó không được coi là palindrome.
Ví dụ 2: Kiểm tra Palindrome bằng các Hàm tích hợp
// 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);
Đầu ra
Nhập một chuỗi: xin chào Nó không phải là palindrome
Trong chương trình trên, palindrome được kiểm tra bằng các phương thức tích hợp sẵn có trong JavaScript.
- Các
split('')
phương pháp chuyển đổi chuỗi thành ký tự mảng cá nhân.const arrayValues = string.split(''); // ("h", "e", "l", "l", "o")
- Các
reverse()
phương pháp đảo ngược vị trí trong một mảng.// ("o", "l", "l", "e", "h") const reverseArrayValues = arrayValues.reverse();
- Các
join('')
phương pháp tham gia tất cả các phần tử của một mảng thành một chuỗi.const reverseString = reverseArrayValues.join(''); // "olleh"
- Sau đó,
if… else
câu lệnh được sử dụng để kiểm tra xem chuỗi và chuỗi đảo ngược có bằng nhau hay không. Nếu chúng bằng nhau, chuỗi là một palindrome.
Lưu ý : Có thể giảm nhiều dòng mã và viết trong một dòng:
const reverseString = string.split('').reverse().join('');