javascript全局变量可以容纳多少数据?

ale*_*lex 3 ajax

要使用ajax div启用返回功能,我创建了这些简单的函数,我想知道.js全局变量可以容纳多少数据?

    var dataAfterSearch; //global variable which holds our search results

function goBackAfterSearch() {
    /**
    *   function which displays the previous state
    *
    **/
    $.ajaxSetup ({
        cache: false
    });
    //alert("Previous Search" +dataAfterSearch);
    $('#result').html(dataAfterSearch);
     paginateIt();
}
function setDataAfterSearch(data)
{   
    /**
    * function to set the global dataAfterSearch
    *
    **/
    dataAfterSearch = data;
}
Run Code Online (Sandbox Code Playgroud)

亲切的问候

Rya*_*rle 12

没有限制,最大大小是浏览器/实现特定的.

您可以通过执行如下脚本来测试限制:

var str = "";
var sizeCount = 0;
while( true ) {
   str += "a";
   if( ++sizeCount >= 1048576 ) { // Show an alert for every MB
      alert( str.length );
      sizeCount = 0;
   }
}
Run Code Online (Sandbox Code Playgroud)

我在Chrome中遇到26MB左右的错误.


Bob*_*Bob 0

全局变量与非全局变量在可以容纳的内容和数量方面没有任何不同。规范没有提到字符串长度的限制(AJAX 将返回的字符串),所以我认为它依赖于实现。

我在 bytes.com 上找到了这个讨论,其中提到了在不同浏览器中遇到的一些限制。