diff --git a/palindromes/palindromes.js b/palindromes/palindromes.js index a27496d..19b6aa8 100644 --- a/palindromes/palindromes.js +++ b/palindromes/palindromes.js @@ -1,5 +1,11 @@ -var palindromes = function() { +const palindromes = function(string) { + processedString = string.toLowerCase().replace(/[^A-Za-z]/g, ""); + return ( + processedString + .split("") + .reverse() + .join("") == processedString + ); +}; -} - -module.exports = palindromes +module.exports = palindromes; diff --git a/palindromes/palindromes.spec.js b/palindromes/palindromes.spec.js index e5e594d..430d988 100644 --- a/palindromes/palindromes.spec.js +++ b/palindromes/palindromes.spec.js @@ -1,20 +1,21 @@ -var palindromes = require('./palindromes') +const palindromes = require("./palindromes"); -describe('palindromes', function() { - it('works with single words', function() { - expect(palindromes('racecar')).toEqual(true); +describe("palindromes", () => { + it("works with single words", () => { + expect(palindromes("racecar")).toEqual(true); }); - xit('works with punctuation', function() { - expect(palindromes('Racecar!')).toEqual(true); + it("works with punctuation", () => { + expect(palindromes("Racecar!")).toEqual(true); }); - xit('works with multiple words', function() { - expect(palindromes('A car, a man, a maraca.')).toEqual(true); + it("works with multiple words", () => { + expect(palindromes("A car, a man, a maraca.")).toEqual(true); }); - xit('works with multiple words', function() { - expect(palindromes('Animal loots foliated detail of stool lamina.')).toEqual(true); + it("works with multiple words", () => { + expect( + palindromes("Animal loots foliated detail of stool lamina.") + ).toEqual(true); }); - xit('doesn\'t just always return true', function() { - expect(palindromes('ZZZZ car, a man, a maraca.')).toEqual(false); + it("doesn't just always return true", () => { + expect(palindromes("ZZZZ car, a man, a maraca.")).toEqual(false); }); - });