因此,我使用ASP.NET來編寫後端,當我將100個元素插入數組時,它都可以正常工作,但我有3005個元素可以放入陣列和它會變得更大。ASP.NET/JavaScript:數組索引溢出:實體框架/ LINQ
responseTwo.Append("ts.push('" + busAddrs[final] + "'); ");
任何人都知道一個辦法讓unlimated指數在JavaScript中的數組?
編輯:在前端,它出來像這樣 -
ts.push('ADDRESS LINE HERE'); ts.push('ANOTHER ADDRESS LINE HERE');
ECT ....上述作品如此100,更多的,它停止工作,且錯誤是在這裏:
https://gyazo.com/d7c05e8b57bb348481cd28597f61261c
& &
Uncaught SyntaxError: Unexpected token ILLEGAL
編輯:由於有人投票下來,我打了100次,然後加入ts.push('hello');
,它仍然返回相同的錯誤,無論它裏面什麼! - 看我的意見
編輯:ASP後端代碼:
var response = new StringBuilder();
var responseTwo = new StringBuilder();
while (cnt != tbl.Length)
{
query = busIDs[cnt];
var ttbl = db.tblbus_address.Where(c => c.BusinessID == query).FirstOrDefault();
if(ttbl != null && !string.IsNullOrEmpty(ttbl.Address1))
{
busAddrs.Add(ttbl.Address1.ToString());
} else {
busAddrs.Add("We do not have an address for this...");
}
cnt++;
}
int final = 0;
responseTwo.Append("<script> ts = []; ");
while (final != tbl.Length)
{
response.Append("<li onclick='s(" + final + ");'>" + busNames[final] + "</li>");
responseTwo.Append("ts.push('" + busAddrs[final] + "'); ");
final++;
}
responseTwo.Append(" </script>");
Output.Text = response.ToString();
jsOut.Text = responseTwo.ToString();
BusAddr是一個數組,BusName是一個數組,BusIDS是一個數組。
編輯:https://gyazo.com/f95ece23b28579562a145061797b51a4 - 此圖顯示了開發者工具,有沒有「令牌」或任何這樣的,它只是停止工作......
編輯:有是一種以具有在任何特殊字符沒有任何問題數據庫,我搜索了一切。
在JavaScript中的最大數組大小http://stackoverflow.com/questions/6154989/maximum-size-of-an-array-in-javascript。你應該轉義你用來創建'ts.push的字符串.. 。)':'未捕獲的SyntaxError:意外的標記ILLEGAL'它可能包含''' – Hacketo
根據這個,超過100,請看看錯誤和圖像理解,因爲我不認爲它的索引是這個問題。 @Hacketo – KDOT
我只是將4000個元素推送到我的控制檯中的測試數組中,並且它在沒有任何問題的情況下立即運行。我不認爲你的問題與陣列的大小有關,我認爲這是你推動的。 –