2017-07-14 3 views
-4

Ich denke, ich muss eine neue Variable erstellen, aber wenn ich es tue, tut es eine Funktion.Was ist falsch an diesem Code? (für die Überprüfung Palindron)

function palindrome(str) { 
str = str.replace(/[^a-zA-Z0-9]/g, ""); 
str = str.split(""); 
if (str == str.reverse()) { 
return(true); 

} 

else if(str != str.reverse()) { 
return (false); 
} 
return str; 
} 



palindrome("eye"); 
+0

"Acts wie eine Funktion"? Hä? Außerdem ist 'return' keine Funktion, diese Klammern sind nutzlos. Sie können es einfach auf 'return str === str.reverse()' verkürzen. – Li357

+0

Nachdem Sie str geteilt und mit str.reverse verglichen haben, versuchen Sie zwei Arrays mit '==' zu vergleichen. Das wird nicht funktionieren. Eine Möglichkeit ist es, die '.join ('')' Methode zu verwenden, um beide in Strings umzuwandeln. – James

Antwort

0
function palindrome(str){ 
    str = str.replace(/[^a-zA-Z0-9]/g, "").split(""); 
    return str.join('') == str.reverse().join(''); 
}