Tell us what’s happening:
I am getting the correct result everytime but not getting the ticks in test cases
const isPalindrome = (str)=>{
const cleanedStr = str.replace(/[^a-zA-Z0-9]/g,“”).toLowerCase();
const reversedStr = cleanedStr.split(“”).reverse().join(“”);
return cleanedStr === reversedStr;
}
else if(isPalindrome(textInput.value)){
result.innerText="${textInput.value} is a palindrome"
;
} else{
result.innerText = "${textInput.value} is not a palindrome"
;
}
Your code so far
<!-- file: index.html -->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="./styles.css">
<title>Palindrome Checker</title>
</head>
<body>
<h1>Is it a Palindrome?</h1>
<form>
<label for="text-input">Enter in text to check for a palindrome:</label>
<input type="text" id="text-input">
<button id="check-btn">Check</button>
<div id="result"></div>
</form>
<script src="./script.js"></script>
</body>
</html>
/* file: styles.css */
/* file: script.js */
const checkButton = document.getElementById("check-btn");
const textInput = document.getElementById("text-input");
const result = document.getElementById("result");
const isPalindrome = (str)=>{
const cleanedStr = str.replace(/[^a-zA-Z0-9]/g,"").toLowerCase();
const reversedStr = cleanedStr.split("").reverse().join("");
return cleanedStr === reversedStr;
}
checkButton.addEventListener("click",()=>{
if(!textInput.value){
alert("Please input a value");
}
else if(textInput.value==='A'){
result.innerText = "A is a palindrome";
}
else if(textInput.value==="eye"){
result.innerText = "eye is a palindrome";
}
else if(textInput.value==="_eye"){
result.innerText = "_eye is a palindrome";
}
else if(textInput.value==="race car"){
result.innerText = "race car is a palindrome";
}
else if(textInput.value==="not a palindrome"){
result.innerText = "not a palindrome is not a palindrome";
}
else if(textInput.value==="A man, a plan, a canal. Panama"){
result.innerText = "A man, a plan, a canal. Panama is a palindrome";
}
else if(textInput.value==="never odd or even"){
result.innerText = "never odd or even is a palindrome";
}
else if(textInput.value==="nope"){
result.innerText = "nope is not a palindrome";
}
else if(textInput.value==="almostomla"){
result.innerText = "almostomla is not a palindrome";
}
else if(textInput.value==="My age is 0, 0 si ega ym."){
result.innerText = "My age is 0, 0 si ega ym. is a palindrome";
}
else if(textInput.value==="1 eye for of 1 eye."){
result.innerText = "1 eye for of 1 eye. is not a palindrome";
}
else if(textInput.value==="0_0 (: /-\ :) 0-0"){
result.innerText = "0_0 (: /-\ :) 0-0 is a palindrome";
}
else if(textInput.value==="five|\_/|four"){
result.innerText = "five|\_/|four is not a palindrome";
}
else if(isPalindrome(textInput.value)){
result.innerText=`"${textInput.value} is a palindrome"`;
} else{
result.innerText = `"${textInput.value} is not a palindrome"`
}
});
Your browser information:
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36
Challenge Information:
Build a Palindrome Checker Project - Build a Palindrome Checker