These are chat archives for camperbot/bonfire-check-for-palindromes

30th
Dec 2015
Cliff Lezark
@Cllezark
Dec 30 2015 02:56
Hey Justin101, how much of your code works right now? I'm stuck too, but only with a few examples.
maybe we can work this out together?
oh, that was yesterday. sweet
hint
CamperBot
@camperbot
Dec 30 2015 02:59

hint [1/9]

## :construction: After this are possible spoiler hints.

Make sure you've tried to hard to solve it yourself before proceeding. :construction:

type hint for next hint :pencil: [Contribute at the FCC Wiki]

Cliff Lezark
@Cllezark
Dec 30 2015 03:00
hint
CamperBot
@camperbot
Dec 30 2015 03:00

hint [2/9]

Explanation:

You have to check if the string you get as an input is a palindrome and return true if it is, and false otherwise.

type hint for next hint :pencil: [Contribute at the FCC Wiki]

Cliff Lezark
@Cllezark
Dec 30 2015 03:00
hint
CamperBot
@camperbot
Dec 30 2015 03:00

hint [3/9]

Hint: 1

You may use regular expressions (RegExp) to remove unwanted characters from the string.

type hint for next hint :pencil: [Contribute at the FCC Wiki]

Cliff Lezark
@Cllezark
Dec 30 2015 03:00
hint
CamperBot
@camperbot
Dec 30 2015 03:00

hint [4/9]

Hint: 2

You may use Array.prototype.split and Array.prototype.join methods or for loop.

type hint for next hint :pencil: [Contribute at the FCC Wiki]

Cliff Lezark
@Cllezark
Dec 30 2015 03:00
hint
CamperBot
@camperbot
Dec 30 2015 03:00

hint [5/9]

Hint: 3

You may lowercase the string using String.prototype.toLowerCase.

type hint for next hint :pencil: [Contribute at the FCC Wiki]

Cliff Lezark
@Cllezark
Dec 30 2015 03:00
hint
CamperBot
@camperbot
Dec 30 2015 03:00

hint [6/9]

Spoiler Alert!

687474703a2f2f7777772e796f75726472756d2e636f6d2f796f75726472756d2f696d616765732f323030372f31302f31302f7265645f7761726e696e675f7369676e5f322e676966.gif

Solution ahead!

type hint for next hint :pencil: [Contribute at the FCC Wiki]

Cliff Lezark
@Cllezark
Dec 30 2015 03:01
hint
CamperBot
@camperbot
Dec 30 2015 03:01

hint [7/9]

First

function palindrome(str) {
  var normalizedStr = str.replace(/[\W_]/g, '').toLowerCase();
  var reverseStr = normalizedStr.split('').reverse().join('');
  return normalizedStr === reverseStr;
}

type hint for next hint :pencil: [Contribute at the FCC Wiki]

Cliff Lezark
@Cllezark
Dec 30 2015 03:02
hint
CamperBot
@camperbot
Dec 30 2015 03:02

hint [8/9]

Second

function palindrome(str) {
  str = str.toLowerCase().replace(/[\W_]/g, '');
  for(var i = 0, len = str.length - 1; i < len/2; i++) {
    if(str[i] !== str[len-i]) {
      return false;
    }
  }
  return true;
}

Code Explanation:

We use regular expressions to replace any uppercase letter into a lowercase. Then we check if the string is the same as the reversed string using split() to split the original string by characters, then reverse and then join it back together.

type hint for next hint :pencil: [Contribute at the FCC Wiki]