Javascript回文逻辑
我已经检查了这个线程:但我更希望修复我自己的算法。我现在只是在线编程,所以我没有一个好的调试器。因此,如发现任何提示/调试问题,将不胜感激。代码如下:Javascript回文逻辑,javascript,palindrome,Javascript,Palindrome,我已经检查了这个线程:但我更希望修复我自己的算法。我现在只是在线编程,所以我没有一个好的调试器。因此,如发现任何提示/调试问题,将不胜感激。代码如下: function isPalindrome(str) { if(str !== null && str !== undefined && str !== NaN) { var strStripped = str.replace(/[\.,-\/#!$%\^&\*;:{}=\-_`~()@]/g,"");
function isPalindrome(str) {
if(str !== null && str !== undefined && str !== NaN) {
var strStripped = str.replace(/[\.,-\/#!$%\^&\*;:{}=\-_`~()@]/g,"");
var strSqueezed = strStripped.replace(/ /g, "");
var i, k;
k = str.length-1;
var numOfValidComparisons = 0;
for(i=0; i<strSqueezed.length; i++) {
if(strSqueezed.charAt(i) === strSqueezed.charAt(k)) {
numOfValidComparisons++;
}
k--;
}
if(numOfValidComparisons === strSqueezed.length)
return true;
else
return false;
}
return false;
}
函数isAlindrome(str){
if(str!==null&&str!==undefined&&str!==NaN){
var strStripped=str.replace(/[\,-\/\\\!$%\^&*;:{}=\-\-\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*;:{}=\-\\;
var strsquezed=strStripped.replace(//g,“”);
变量i,k;
k=str.length-1;
var numOfValidComparisons=0;
对于(i=0;i
应该是
k = strSqueezed.length-1;
就这样
str.replace(/\W/g,“”)==str.split(“”).reverse().join(“”).replace(/\W/g,””)
再次,不寻找其他答案,我正在寻找修复此问题的答案。“我没有访问好的调试器的权限”…除非你被困在一些古老的浏览器中,否则内置的控制台和相关工具有什么问题?Chrome内置了一个优秀的调试器。同样在一台不允许保存到磁盘的计算机上。我不知道如何从未保存在磁盘上的代码进行调试。总的来说,这段代码是垃圾哈哈。不过至少我做到了这一点。哈哈。谢谢你的支持新鲜的眼睛。无论哪种方式,我都会在午餐后得到它,但谢谢!
k = strSqueezed.length-1;