Palindrome help - comparing arrays doesn't work

My process is to take a string, make it lower case, remove any non-characters and then split it up into individual characters in an array, which I then compare the array with a reversed version of the array. For some reason, when the arrays are compared they always return true, even though I pass in text that is not a palindrome. Any help would be appreciated.

function palindrome(str) {
var newStr = str.toLowerCase().replace(/[\W]/g,'').split('');
return newStr === newStr.reverse();
}
palindrome("not a palindrome");