เราต้องเขียนฟังก์ชัน JavaScript ที่รับสตริง ฟังก์ชันควรคืนค่า true ถ้าสตริงเป็นสตริงพาลินโดรม false ถ้าไม่ใช่ สตริงพาลินโดรมคือสตริงที่อ่านจากหน้าหลังได้เหมือนกัน เช่น 'madam', 'dad', 'abcdcba' เงื่อนไขของเราคือไม่สามารถใช้เมธอดสตริงในตัว (inbuilt) ใดๆ หรือแปลงสตริงเป็นอาร์เรย์ได้
ตัวอย่าง
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'));
ผลลัพธ์
ผลลัพธ์ในคอนโซลจะเป็นดังนี้:
true false