失败 1 :- 请在创建 Javascript 回文检查时检查 JavaScript 程序逻辑

Fail 1 :- Please check the JavaScript program logic while creating a Javascript Palindrome check

问题:- 编写一个 javascript 函数来检查一个单词或一个句子是否是回文,而不考虑大小写和空格。将 HTML 文件命名为 palin.html.

在单击名称为“palinbtn”的按钮时发出适当的警报。还提供一个名为“palin”的文本框,它接受单词/句子。

重要提示:

  1. 从给定的输入中删除所有空格并检查相同输入的回文忽略大小写。
  2. 通过 alert() 显示适当的消息后,页面不应被重定向。
  3. 不要使用 'let' 或 'const' 关键字。相反,使用 'var'.
  4. 使用 getElementById() 或 getElementsByName() 从 HTML 个组件中获取值。
  5. 确保所有标签和属性都是小写

代码:-

<!DOCTYPE html>
<html>
  <body>
    //input from user using form
    <form onsubmit="return display();">
      Enter word/sentence to check for palindrome:<input
        type="text"
        name="palin"
        id="palin"
      /><br />
      <input type="submit" name="palinbtn" value="Check Palindrome" />
    </form>
    <script>
      function display() {
        //getting the value from textbox
        var str = document.getElementById("palin").value;
        //removing special char. and converting to lowercase
        var str = str.replace(/\s/g, "").toLowerCase();
        //removing whitespaces
        var input = str.split();
        //joining the reversed string
        var output = input.reverse().join("");
        if (str == output) {
          alert("The entry is a Palindrome.");
          return false;
        } else {
          alert("The entry is not a palindrome");
          return false;
        }
      }
    </script>
  </body>
</html>

Error in output

您需要用空字符串拆分才能获得所有字符。

var input = str.split('');
//                    ^^

通过 alert() 显示适当的消息后,页面不应被重定向。 警报();未在此代码中使用

你可以有一个更简单的代码:

if( str == str.toLowerCase().split('').reverse().join(''))