Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Số đối xứng (Palindrome) trong JavaScript

Chúng ta cần viết một hàm JavaScript nhận vào một số và xác định xem số đó có phải là số đối xứng hay không.

Số đối xứng là số đọc từ trái sang phải và từ phải sang trái đều giống nhau.

Ví dụ:

  • 343 là số đối xứng
  • 6789876 là số đối xứng
  • 456764 không phải số đối xứng

Ví dụ

const num1 = 343; 
const num2 = 6789876; 
const num3 = 456764; 
const isPalindrome = num => { 
  let length = Math.floor(Math.log(num) / Math.log(10) + 1); 
  while(length > 0) { 
    let last = Math.abs(num - Math.floor(num/10)*10); 
    let first = Math.floor(num / Math.pow(10, length - 1)); 
    if(first != last){ 
      return false; 
    }; 
    num -= Math.pow(10, length - 1) * first; 
    num = Math.floor(num/10); 
    length -= 2; 
  }; 
  return true; 
}; 
console.log(isPalindrome(num1)); 
console.log(isPalindrome(num2)); 
console.log(isPalindrome(num3));

Kết quả

Kết quả in ra console:

true true false