Write a function that determines whether or not a given string is a palindrome

This commit is contained in:
Akutsang 2023-02-03 15:08:55 +01:00
parent 830ca7acd1
commit ca7b05549c
2 changed files with 17 additions and 7 deletions

View File

@ -1,6 +1,15 @@
const palindromes = function () { const palindromes = function (input) {
let validate =/[\W_]/g;
let newInput = input.toLowerCase().replace(validate, "");
let reversedInput = newInput.split("").reverse().join("");
if (reversedInput == newInput) {
return true;
}else{
return false;
}
}; };
// Do not edit below this line // Do not edit below this line
module.exports = palindromes; module.exports = palindromes;

View File

@ -1,22 +1,23 @@
const palindromes = require('./palindromes') const palindromes = require('./palindromes')
describe('palindromes', () => { describe('palindromes', () => {
test('works with single words', () => { test('works with single words', () => {
expect(palindromes('racecar')).toBe(true); expect(palindromes('racecar')).toBe(true);
}); });
test.skip('works with punctuation ', () => { test('works with punctuation ', () => {
expect(palindromes('racecar!')).toBe(true); expect(palindromes('racecar!')).toBe(true);
}); });
test.skip('works with upper-case letters ', () => { test('works with upper-case letters ', () => {
expect(palindromes('Racecar!')).toBe(true); expect(palindromes('Racecar!')).toBe(true);
}); });
test.skip('works with multiple words', () => { test('works with multiple words', () => {
expect(palindromes('A car, a man, a maraca.')).toBe(true); expect(palindromes('A car, a man, a maraca.')).toBe(true);
}); });
test.skip('works with multiple words', () => { test('works with multiple words', () => {
expect(palindromes('Animal loots foliated detail of stool lamina.')).toBe(true); expect(palindromes('Animal loots foliated detail of stool lamina.')).toBe(true);
}); });
test.skip('doesn\'t just always return true', () => { test('doesn\'t just always return true', () => {
expect(palindromes('ZZZZ car, a man, a maracaz.')).toBe(false); expect(palindromes('ZZZZ car, a man, a maracaz.')).toBe(false);
}); });
}); });