这是我的第一个问题,如果没有正确格式化或放置在适当的区域,我会道歉。
我刚刚完成FreeCodeCamp检查回收挑战。我无能为力,但认为我的解决方案非常不优雅。
function palindrome(str) {
var cleanString = str.replace(/[^A-Za-z0-9]/g, '');
var lowerCleanString = cleanString.toLowerCase();
var lowerArr = lowerCleanString.split('');
var reverseArr = lowerArr.reverse();
var joinedArr = reverseArr.join('');
if (joinedArr === lowerCleanString) {
return true;
}
// Good luck!
else {
return false;
}
}
我知道它有效,但是可以一起或以更清洁的方式完成这些步骤吗?
答案 0 :(得分:1)
检查回文的简单功能
function checkPalindrome(palindrome) {
return palindrome == palindrome.split('').reverse().join('');
}
答案 1 :(得分:0)
function palindrome(str) {
var newstr = str.replace(/[\W_]/g,'').toLowerCase();
if(newstr === newstr.split('').reverse().join('')){
return true;
}
return false;
}
palindrome("five|\_/|four");
您可以在一行中使用多种方法,就像我使用它们一样。它更简单:) 祝你好运