這是我現在寫的功能。網絡控制檯對我來說沒有太大作用。每次在文本框中輸入單詞時,即使它是迴文,它也會返回"undefinedThis is not a palindrome!"
。如何創建一個函數來接受輸入並測試它是否是迴文?
不知道這裏有什麼問題。或許與if
陳述有關?我怎樣才能讓函數忽略大寫字母?我希望它考慮"bob"
和"Bob"
迴文。
function test() {
// Assumes: a string is entered into the "palin" text box
// Results: tests if the string is a palindrome and
// returns the conclusion to outputDiv
var word, copy, i;
word = document.getElementById("palin").value;
copy = " ";
i = 0;
while (i < word.length) {
copy = word.charAt(i) + copy;
i=i+1;
}
if (word === copy) {
document.getElementById("outputDiv").innerHTML =
document.getElementById("outputDiv").value +
"This is a palindrome!";
} else {
document.getElementById('outputDiv').innerHTML =
document.getElementById('outputDiv').value +
"This is not a palindrome!";
}
}
解決大寫簡單不匹配問題在比較開始之前,您可以將整個字符串轉換爲小寫字母。 http://www.w3schools.com/jsref/jsref_tolowercase.asp – tnishada 2014-12-07 04:43:58
當程序執行時,應該添加一些'console.log()'或'alert()'語句來調試'word'和'copy'的值。問題可能是您將'copy'初始化爲''''(空格)而不是空字符串''''。但是你需要學習如何調試你自己的代碼,所以一定要記錄一下。 – 2014-12-07 04:45:29
@ user2570380不需要'(word.split(「」)。reverse()。join – 2014-12-07 05:00:04