我試圖將兩個字符串轉換爲相同的格式,比如toUpperCase/toLowerCase來比較兩個字符串,而不管在javaScript中是否區分大小寫。以下是我的功能。先不能讀取屬性「toUpperCase」未定義的。我也試圖轉換的toString()來toLowercase()。它也犯了錯誤(的toString()未定義):Uncaught TypeError:無法讀取未定義的屬性'toUpperCase'
function submitForm() {
var usernames=['one','two','Test'];
var cpusername = "test";
var flag = 0;
if (cpusername !== "")
{
for (var k = 0; k < usernames.length; k++)
{
var upperCasecpusername=cpusername.toUpperCase();
var getusername= usernames[k];
var upperCaseusername=getusername.toUpperCase();
if (upperCasecpusername === upperCaseusername)
{
flag=1;
console.log(flag);
//document.getElementById('cpusername').value = '';
$.messager.alert("Message", "Someone already has username"+cpusername+". Try another!!", '');
}
}
}
正在此錯誤遺漏的類型錯誤。另外建議我是否有其他方法來比較兩個字符串,而不管區分大小寫。謝謝!
如果條件'k <= usernames.length;'將使它通過數組邊界。數組的索引是0,所以數組的最後一個索引將是Array'length-1' –
其中代碼中的'toUpperCase'是? – gurvinder372
可能重複[Javascript數組未定義for循環](http://stackoverflow.com/questions/6571451/javascript-array-undefined-in-for-loop) –