Palindrome Number in Javascript

RMAG news

Method 1: String Conversion and Reversal

function isPalindrome(number) {
const str = number.toString();
const reversedStr = str.split(”).reverse().join(”);
return str === reversedStr;
}

// Example usage
console.log(isPalindrome(121)); // true
console.log(isPalindrome(123)); // false
console.log(isPalindrome(1331)); // true

Method 2: Using a Loop

function isPalindrome(number) {
const str = number.toString();
const len = str.length;

for (let i = 0; i < len / 2; i++) {
if (str[i] !== str[len – 1 – i]) {
return false;
}
}
return true;
}

// Example usage
console.log(isPalindrome(121)); // true
console.log(isPalindrome(123)); // false
console.log(isPalindrome(1331)); // true

Method 3: Mathematical Approach
This approach avoids string conversion and operates directly on the number.

function isPalindrome(number) {
if (number < 0) return false; // Negative numbers are not palindromes
let reversed = 0;
let original = number;

while (original > 0) {
const digit = original % 10;
reversed = reversed * 10 + digit;
original = Math.floor(original / 10);
}

return number === reversed;
}

// Example usage
console.log(isPalindrome(121)); // true
console.log(isPalindrome(123)); // false
console.log(isPalindrome(1331)); // true

Method 4: Using Recursion

function isPalindromeHelper(str, start, end) {
if (start >= end) return true;
if (str[start] !== str[end]) return false;
return isPalindromeHelper(str, start + 1, end – 1);
}

function isPalindrome(number) {
const str = number.toString();
return isPalindromeHelper(str, 0, str.length – 1);
}

// Example usage
console.log(isPalindrome(121)); // true
console.log(isPalindrome(123)); // false
console.log(isPalindrome(1331)); // true

Method 5: Using Regular Expressions

function isPalindrome(number) {
const str = number.toString();
const reversedStr = str.replace(/[W_]/g, ”).split(”).reverse().join(”);
return str === reversedStr;
}

// Example usage
console.log(isPalindrome(121)); // true
console.log(isPalindrome(123)); // false
console.log(isPalindrome(1331)); // true

Please follow and like us:
Pin Share