softare development

Check if Number, Word or Phrase is a Palindrome in JavaScript

What is a Palindrome?

A palindrome is any word, phrase, number, or sequence that reads the exact same way forwards and backwards. Think of it like a mirror for text!

ABA Example

Step 1: What is “Aba”?

  • “Aba” is a real city in Nigeria (in Abia State).
  • Let’s write it out: A – B – A

Step 2: Read it FORWARDS:

  A → B → A  
  = "Aba"

Step 3: Read it BACKWARDS:

  A ← B ← A  
  = "Aba" (SAME THING!)

Step 4: Why it works:

  • First letter: A
  • Middle letter: B
  • Last letter: A
    👉 Start and end match perfectly!

Become a JavaScript Master

Another Example is “madam”

“madam” → Reverse = “madam” (Same!)

We can write a Javascript program to check if a given word is a palindrome or not.

function isPalindrome(word) {
  // 1. Convert to lowercase (so "Madam" = "madam")
  const cleanWord = word.toLowerCase();
  
  // 2. Split into letters → ["m", "a", "d", "a", "m"]
  const letters = cleanWord.split('');
  
  // 3. Reverse letters → ["m", "a", "d", "a", "m"] becomes ["m", "a", "d", "a", "m"] backwards? Wait, it's the same!
  const reversedLetters = letters.reverse();
  
  // 4. Join reversed letters → "madam"
  const reversedWord = reversedLetters.join('');
  
  // 5. Compare: Original vs Reversed
  return cleanWord === reversedWord;
}

Result:

console.log(isPalindrome("Ada"));    // true! (Because "ada" reversed = "ada")
console.log(isPalindrome("Aba"));    // true! (City in Nigeria)
console.log(isPalindrome("Hannah")); // true!

console.log(isPalindrome("Lagos"));  // false ("sogaL" ≠ "Lagos")
console.log(isPalindrome("Abuja"));  // false ("ajubA" ≠ "Abuja")

We can do an advance check for sentences and punctuations:

function isAdvancedPalindrome(text) {
  // Remove spaces/punctuation, keep only letters/numbers
  const cleanText = text.toLowerCase().replace(/[^a-z0-9]/g, '');
  
  // Reverse clean text
  const reversedText = cleanText.split('').reverse().join('');
  
  return cleanText === reversedText;
}

// Test with phrases:
console.log(isAdvancedPalindrome("Was it a car or a cat I saw")); // true!
console.log(isAdvancedPalindrome("No lemon, no melon")); // true!

Recent Posts

Essential VS Code Extensions Every Developer Should Use

Visual Studio Code (VS Code) is powerful out of the box, but its real strength…

1 week ago

JavaScript Variables

1. What Is a Variable in JavaScript? A variable is a named container used to store data…

1 week ago

C++ Queue

1. What Is a Queue? A Queue is a linear data structure that follows the principle: FIFO – First…

2 weeks ago

Must-Know Angular Concepts

Angular is a full-featured frontend framework built by Google for creating large, maintainable, and high-performance web applications.…

2 weeks ago

Responsive Web Design (RWD)

What Is Responsive Web Design? Responsive Web Design (RWD) is an approach to building websites…

2 weeks ago

Geolocation API in JavaScript

The Geolocation API allows a web application to access a user’s geographical location (latitude, longitude, and more), with…

3 weeks ago