【问题标题】:Palindrome-Testing Function回文测试函数
【发布时间】:2015-08-09 13:07:04
【问题描述】:

我正在尝试为 http://www.freecodecamp.com/challenges/bonfire-check-for-palindromes 创建回文测试函数 锻炼,我不明白为什么下面的功能不起作用。我把所有非字母都去掉了,改成小写了——有什么问题?

function palindrome(str) {
  if (str.replace(/[^A-Za-z]/g, '').toLowerCase().split('').reverse().join('')===str)
  {
  return true;
  }
  else {
    return false;
  }
}

【问题讨论】:

    标签: math palindrome


    【解决方案1】:

    您取出所有非字母并仅将等式左侧转换为小写,然后(在反转后)您将其等同于 str 可能仍然有大写和非字母

    试试:

    function palindrome(str) {
      return str.replace(/[^A-Za-z]/g, '').toLowerCase().split('').reverse().join('') === str.replace(/[^A-Za-z]/g, '').toLowerCase();
    }
    

    注意 if(x) return true else return false 不需要做,你可以只返回 if 里面的布尔值。

    【讨论】:

      猜你喜欢
      • 2018-06-16
      • 1970-01-01
      • 2016-12-26
      • 2021-08-08
      • 2017-02-04
      • 2019-09-21
      • 1970-01-01
      • 1970-01-01
      • 2013-04-10
      相关资源
      最近更新 更多