I added some logging and test cases to your code. Hope it helps.
There is also output after running the below.
function palindrome(str) {
console.log('testCASE ', str);//CHANGED
let newStr = str.toLowerCase("");
let newStrArr = newStr.split("");
//* CYCLES THROUGH ARRAY
for (let i=0; i < newStrArr.length; i++) {
//* RETURNS ALPHANUMERIC VALUES ONLY
let toRemove = (/\w+/);
console.log('toRemove value after regexp: ', toRemove)//CHANGED
let removed = newStrArr.slice(toRemove);
console.log('removed value after slicing: ', removed)//CHANGED
//* CONCATENATES BACK TO STRING
let removedJoin = removed.join("");
//* REVERSES (let removed) AND STORES IN NEW VARIABLE
let removedReverse = removed.reverse("");
//* CONCATENATES REVERSED ARRAY TO STRING
let removedReverseJoin = removedReverse.join("");
//*CONDITIONAL STATEMENT/RETURNS BOOLEAN
if (removedJoin == removedReverseJoin) {
return true;
}
return false;
}
}
/*array of FCC test cases*/
const testCases = [
["eye", true],
["_eye", true],
["race car", true],
["not a palindrome", false],
["A man, a plan, a canal. Panama", true],
["never odd or even", true],
["nope", false],
["almostomla", false],
["My age is 0, 0 si ega ym.", true],
["1 eye for of 1 eye.", false],
["0_0 (: /-\\ :) 0-0", true],
["five|\\_/|four", false]
];
for (test of testCases) {
console.log('for string ===', test[0], ' expected: ', test[1],
'return: ', palindrome(test[0]));
console.log('-----------');
}
/*
Output:
testCASE eye
toRemove value after regexp: /\w+/
removed value after slicing: [ 'e', 'y', 'e' ]
for string === eye expected: true return: true
-----------
testCASE _eye
toRemove value after regexp: /\w+/
removed value after slicing: [ '_', 'e', 'y', 'e' ]
for string === _eye expected: true return: false
-----------
testCASE race car
toRemove value after regexp: /\w+/
removed value after slicing: [
'r', 'a', 'c',
'e', ' ', 'c',
'a', 'r'
]
for string === race car expected: true return: false
-----------
testCASE not a palindrome
toRemove value after regexp: /\w+/
removed value after slicing: [
'n', 'o', 't', ' ',
'a', ' ', 'p', 'a',
'l', 'i', 'n', 'd',
'r', 'o', 'm', 'e'
]
for string === not a palindrome expected: false return: false
-----------
testCASE A man, a plan, a canal. Panama
toRemove value after regexp: /\w+/
removed value after slicing: [
'a', ' ', 'm', 'a', 'n', ',',
' ', 'a', ' ', 'p', 'l', 'a',
'n', ',', ' ', 'a', ' ', 'c',
'a', 'n', 'a', 'l', '.', ' ',
'p', 'a', 'n', 'a', 'm', 'a'
]
for string === A man, a plan, a canal. Panama expected: true return: false
-----------
testCASE never odd or even
toRemove value after regexp: /\w+/
removed value after slicing: [
'n', 'e', 'v', 'e', 'r',
' ', 'o', 'd', 'd', ' ',
'o', 'r', ' ', 'e', 'v',
'e', 'n'
]
for string === never odd or even expected: true return: false
-----------
testCASE nope
toRemove value after regexp: /\w+/
removed value after slicing: [ 'n', 'o', 'p', 'e' ]
for string === nope expected: false return: false
-----------
testCASE almostomla
toRemove value after regexp: /\w+/
removed value after slicing: [
'a', 'l', 'm', 'o',
's', 't', 'o', 'm',
'l', 'a'
]
for string === almostomla expected: false return: false
-----------
testCASE My age is 0, 0 si ega ym.
toRemove value after regexp: /\w+/
removed value after slicing: [
'm', 'y', ' ', 'a', 'g', 'e',
' ', 'i', 's', ' ', '0', ',',
' ', '0', ' ', 's', 'i', ' ',
'e', 'g', 'a', ' ', 'y', 'm',
'.'
]
for string === My age is 0, 0 si ega ym. expected: true return: false
-----------
testCASE 1 eye for of 1 eye.
toRemove value after regexp: /\w+/
removed value after slicing: [
'1', ' ', 'e', 'y', 'e',
' ', 'f', 'o', 'r', ' ',
'o', 'f', ' ', '1', ' ',
'e', 'y', 'e', '.'
]
for string === 1 eye for of 1 eye. expected: false return: false
-----------
testCASE 0_0 (: /-\ :) 0-0
toRemove value after regexp: /\w+/
removed value after slicing: [
'0', '_', '0', ' ', '(',
':', ' ', '/', '-', '\\',
' ', ':', ')', ' ', '0',
'-', '0'
]
for string === 0_0 (: /-\ :) 0-0 expected: true return: false
-----------
testCASE five|\_/|four
toRemove value after regexp: /\w+/
removed value after slicing: [
'f', 'i', 'v', 'e',
'|', '\\', '_', '/',
'|', 'f', 'o', 'u',
'r'
]
for string === five|\_/|four expected: false return: false
-----------
*/