2017-02-03 2 views
2

Javascript einfach Palindrom Funktion

function palindrome(str) { // "Hello there" 
 
    str.toLowerCase(); // "hello there" 
 
    str = str.replace(/\s/g, ""); // "hellothere" 
 
    var a = str; 
 
    a.split("").reverse().join(""); // a = "erehtolleh" 
 
    return (str === a); // "hellothere" === "erehtolleh" 
 
} 
 

 
alert(palindrome("123432"));

Ich ging nicht -palindromic Wert 123432 aber es gibt wahren Wert. Wer weiß, was mit meiner Palindrome-Funktion nicht stimmt? Würde mich wirklich freuen, wenn jemand meine Logik darauf überprüfen kann.

Antwort

4

Sie benötigen

function palindrome(str) {      // "Hello there" 
 
    str.toLowerCase();        // "hello there" 
 
    str = str.replace(/\s/g, "");     // "hellothere" 
 
    var a = str;        
 
    a = a.split("").reverse().join("");     // a = "erehtolleh" 
 
    return (str === a);        // "hellothere" == "erehtolleh" 
 
} 
 

 

 
alert(palindrome("malayalam"));

+0

Warum ist das Ändern "Malayalam"? Willst du die "Palindrome" -Funktion aufrufen? –

+0

oh ja vergessen, die Funktion zu rufen; 0) –

1

Try this, String ist als sein eine Rückkehr Funktionswert ein zuweisen immuatble, so dass Sie die umgekehrte String der Variablen zugewiesen werden müssen oder nicht vergleichen mit die ursprüngliche und umgekehrte Zeichenfolge wie folgt.

function palindrome(str) { // "Hello there" 
 
    str.toLowerCase(); // "hello there" 
 
    str = str.replace(/\s/g, ""); // "hellothere" 
 
    // var a = str.split("").reverse().join(""); // a = "erehtolleh" 
 
    return (str === str.split("").reverse().join("")); // "hellothere" == "erehtolleh" 
 
} 
 

 

 
alert(palindrome("12321")); 
 
alert(palindrome("1232"));