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

4th
Nov 2015
Nik
@vukolka
Nov 04 2015 04:13
bonfire Seek and Destroy
CamperBot
@camperbot
Nov 04 2015 04:13

:fire:Bonfire: Seek and Destroy :link:

function destroyer(arr) {
  // Remove all the values
  return arr;
}

destroyer([1, 2, 3, 1, 2, 3], 2, 3);

You will be provided with an initial array (the first argument in the destroyer function), followed by one or more arguments. Remove all elements from the initial array that are of the same value as these arguments.

more info:  bf details | bf links | hint

Nik
@vukolka
Nov 04 2015 04:13
hint
CamperBot
@camperbot
Nov 04 2015 04:13

hint [1/8]

## :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]

Nik
@vukolka
Nov 04 2015 04:14
hint
CamperBot
@camperbot
Nov 04 2015 04:14

hint [2/8]

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]

Aisling Grogan
@aisgrogan
Nov 04 2015 05:22
hint
CamperBot
@camperbot
Nov 04 2015 05:22

hint [3/8]

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]

Aisling Grogan
@aisgrogan
Nov 04 2015 05:33
hint
CamperBot
@camperbot
Nov 04 2015 05:33

hint [4/8]

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]

Aisling Grogan
@aisgrogan
Nov 04 2015 05:33
hint
CamperBot
@camperbot
Nov 04 2015 05:33

hint [5/8]

Hint: 3

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

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

Aisling Grogan
@aisgrogan
Nov 04 2015 05:33
hint
CamperBot
@camperbot
Nov 04 2015 05:33

hint [6/8]

Spoiler Alert!

687474703a2f2f7777772e796f75726472756d2e636f6d2f796f75726472756d2f696d616765732f323030372f31302f31302f7265645f7761726e696e675f7369676e5f322e676966.gif

Solution ahead!

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

Aisling Grogan
@aisgrogan
Nov 04 2015 05:34
hint
CamperBot
@camperbot
Nov 04 2015 05:34

hint [7/8]

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]

Aisling Grogan
@aisgrogan
Nov 04 2015 05:34
hint
CamperBot
@camperbot
Nov 04 2015 05:34

hint [8/8]

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.

Credits:

If you found this page useful, you can give thanks by copying and pasting this on the main chat: Thanks @Rafase282 @abhisekp

NOTE: Please add your username only if you have added any relevant main contents to the wiki page. (Please don't remove any existing usernames.)

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