JavaScript: Rearrange a string to become a palindrome
JavaScript String: Exercise-57 with Solution
When a word, phrase, or sequence can be read both forward and backward, it is considered a palindrome. e.g., madam or nurses run.
Write a JavaScript function that receives a string and determines whether or not it can be rearranged to become a palindrome.
Test Data:
("maamd") -> true
("civic") -> true
("IO") -> false
(12321) -> "It must be a string."
Sample Solution:
HTML Code:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JavaScript function to rearrange a string to become a palindrome</title>
</head>
<body>
</body>
</html>
JavaScript Code:
const test = (word) => {
if (word.length === 0)
{
return 'String should not be empty!'
}
if (typeof word !== 'string')
{
return 'It must be a string.'
}
const char_ctr = [...word].reduce((obj, el) => {
obj[el] = obj[el] ? obj[el] + 1 : 1
return obj
}, {})
return Object.values(char_ctr).filter(count => count % 2 !== 0).length <= 1
}
console.log(test("maamd"))
console.log(test("civic"))
console.log(test("IO"))
console.log(test(12321))
Sample Output:
true true false It must be a string.
Flowchart:

Live Demo:
See the Pen javascript-string-exercise-57 by w3resource (@w3resource) on CodePen.
Improve this sample solution and post your code through Disqus
Previous: Check a string is in Pascal case.
Next: Find the most frequent character in a string.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
- Weekly Trends
- Python Interview Questions and Answers: Comprehensive Guide
- Scala Exercises, Practice, Solution
- Kotlin Exercises practice with solution
- MongoDB Exercises, Practice, Solution
- SQL Exercises, Practice, Solution - JOINS
- Java Basic Programming Exercises
- SQL Subqueries
- Adventureworks Database Exercises
- C# Sharp Basic Exercises
- SQL COUNT() with distinct
- JavaScript String Exercises
- JavaScript HTML Form Validation
- Java Collection Exercises
- SQL COUNT() function
- SQL Inner Join