我想從Javascript返回一個字符串:多少個字符的NSString有
[myWebView stringByEvaluatingJavaScriptFromString:@"myJavaScriptFunction()"];
爲短字符串,返回的是OK。 但是,當我返回一個很長的字符串(比如字符串中有5000個字符)時,我什麼都得不到。
所以我猜這可能是由於NSString大小限制或我的「var jvString」大小限制。
請幫忙。感謝
我想從Javascript返回一個字符串:多少個字符的NSString有
[myWebView stringByEvaluatingJavaScriptFromString:@"myJavaScriptFunction()"];
爲短字符串,返回的是OK。 但是,當我返回一個很長的字符串(比如字符串中有5000個字符)時,我什麼都得不到。
所以我猜這可能是由於NSString大小限制或我的「var jvString」大小限制。
請幫忙。感謝
當stringByEvaluatingJavaScriptFromString
返回nil
的方法中,這意味着出了問題。這是最有可能不是因爲NSString
大小限制,但由於以下原因之一:
來自文檔:
JavaScript執行時間限制爲10秒,每個頂級 入口點。如果您的腳本執行超過10秒鐘,則視圖的網頁 將停止執行腳本。這很可能發生在您的代碼中的隨機 位置,因此可能會導致意想不到的後果。強制執行此限制 是因爲JavaScript執行可能導致主線程爲 區塊,因此當腳本運行時,用戶無法與網頁交互 。
JavaScript分配也被限制爲10 MB。如果您對JavaScript的總內存分配 超出了此限制,則Web視圖會引發 異常。
由於32位結構應當具有2^31-1字符應該是足夠一個最大長度;)
感謝您的迴應。但是,似乎我只能接受一個答案。謝謝。 –
你可以在這裏找到更多關於NSString對象最大尺寸的信息,如果有幫助的話:http://stackoverflow.com/questions/6482641/what-is-the-maximum-length-of-an- nsstring-object –