Cần viết hàm JavaScript nhận chuỗi. Hàm trả về true nếu chuỗi là palindrome, false ngược lại.
Chuỗi đối xứng (palindrome) là chuỗi đọc từ trước lùi sau giống nhau.
Ví dụ - 'madam', 'dad', 'abcdcba'. Điều kiện: không dùng phương thức String có sẵn hoặc chuyển chuỗi thành mảng.
Ví dụ
const str = 'madam';
const isPalindrome = (str = '') => {
const { length } = str;
let start = 0, end = length - 1;
while(start < end){
const leftChar = str[start];
const rightChar = str[end];
if(leftChar !== rightChar){
return false;
};
start++;
end--;
};
return true;
};
console.log(isPalindrome(str));
console.log(isPalindrome('avsssvsa'));
Kết quả
Kết quả trong console sẽ là:
true false