JS 不是数据库,搞什么呀?数据量到 2-3k 就不少了!

解决方案 »

  1.   

    10w?
    这么bt的数组要做啥啊-,-!
    汗死
      

  2.   

    我在做一个客户端javascript搜索在数组长度5W时,搜索超快。但在测试到10W时就提示有问题了。所以才冒出来问问大家。
      

  3.   

    搜索的话,用字符串吧
    xxx.js 为内容var str="....";然后包含进来
    用正则匹配 这样也许快点
      

  4.   

    我必须数组,然后indexOf。在5W长的数组里,测试搜索任何字符,只需要60ms-125ms之间。电脑配置是AMD3000mHz的。512内存。重要的是搜索出来的数据,还需要用js写在页面上。这也是为什么要用数组搜索而不用正则Join的办法。如果有1K以上的搜索结果,就容易出问题,所以我用Js分页的办法解决了。现在就是写大量如10W以上的数组,就提示出错了。
      

  5.   

    百度上搜到的:你知道JavaScript里数组的最大长度允许多少吗???JavaScript里数组的最大长度是: 4,294,967,295,即 2^32 - 1.
      

  6.   

    肯定是内存益出,长度 百w 没问题,测试结果如下:  <script language="JavaScript">
      <!--
        var dStart = new Date();
        var aBT = new Array(1000000);    for (var i=0; i<aBT.length; i++)
        {
            aBT[i] = i;
        }
        var nSpan = (new Date()) - dStart;
        alert(nSpan + " ms");    // 10000 47 ms
        // 100000 484 ms
        // 1000000 9140 ms
      //-->
      </script>千万级不敢试,我怕本本挂了!
      

  7.   

    我的测试维可比你多多了:var a = new Array(
    [0,"String0","字段1","字段2","字段3","字段4","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5","字段5"],
    […]
    );像这样的数组到10W估计我内存都不够了。5W的时候,页面本身体积都快10M了。恐怖吧?
      

  8.   

    aBT[i] = i;
    ~~~~~~~~~~
    改成字符串
    aBT[i] = "1";
    速度相差10倍哦
      

  9.   

    建议楼主化整为零,分块查找!10W / 5 = 2w1 加载块1,查询后将结果缓存,delete 块1,
    2 加载块2,查询块2,结果并入第一步缓存,delete 块2,
    3 循环步骤2,直至查询完成!理论上可以解决,实际没这么写过!但速度肯定要慢些,但内存应该不会溢出,只好块的大小合适!
      

  10.   

    To codeworker999()谢谢兄弟的提醒,aBT[i] = i.toString();时间确实迅速增长,百万级是俺的本本终于 Game Over 了,
    CPU 100%,任何程序都无响应!
      

  11.   

    LZ 说报错,啥错误,详细些?可是俺始终没见过?!只是出现了 CPU 忙的状况!
      

  12.   

    LZ 说报错,啥错误,详细些?可是俺始终没见过?!只是出现了 CPU 忙的状况!
    ==============================================alert(a.length)的时候,提示数组 a 不是对象==============================================时间确实迅速增长,百万级是俺的本本终于 Game Over 了,
    CPU 100%,任何程序都无响应!
    ================================默哀呀
      

  13.   

    刚在 IE 7 下是测试了,百万级循环赋整型耗时 4s 多。晕,如果报不是对象,那肯定是数据存在问题,LZ 把后一半声明为新数组试试看,估计还会有错的!试过没?