Javascript 什么是domjs内存容量?
我想知道是否有人知道dom的限制,例如 如果我有一个json对象Javascript 什么是domjs内存容量?,javascript,json,memory-management,Javascript,Json,Memory Management,我想知道是否有人知道dom的限制,例如 如果我有一个json对象 var json={} 这个json对象内部有自己的对象,包括数组、其他对象或事件纯文本 如果存在限制,那么json可以容纳多少子对象?如果对象的大小动态增加,这会显示错误吗?因为没有更多的内存来处理它等等。根据JS、DOM或JSON的标准,在这种情况下没有限制 如果有任何限制,它高度依赖于实现,应该在浏览器(或js引擎)文档中检查。我知道的唯一限制是V8(Chrome的JS引擎)中的heap容量为1.8GB。我不相信有硬限制,但
var json={}
这个json
对象内部有自己的对象,包括数组、其他对象或事件纯文本
如果存在限制,那么
json
可以容纳多少子对象?如果对象的大小动态增加,这会显示错误吗?因为没有更多的内存来处理它等等。根据JS、DOM或JSON的标准,在这种情况下没有限制
如果有任何限制,它高度依赖于实现,应该在浏览器(或js引擎)文档中检查。我知道的唯一限制是V8(Chrome的JS引擎)中的heap容量为1.8GB。我不相信有硬限制,但我很好奇会发生什么,所以我编写了一个临时测试脚本:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<script language="javascript">
window.onload = function() {
var data = [];
var i = 0;
var addData = function() {
var arr = [];
i++;
for(var j=0; j<10000; j++) {
arr.push({
id: i + j,
name: "item" + j,
number: i * j,
date: new Date(),
email: "long_email" + i + "@domain" + j + ".com"
});
}
data.push(arr);
document.getElementById("result").innerHTML = i.toString();
window.setTimeout(addData, 1);
};
addData();
};
</script>
</head>
<body>
<div id="result"></div>
</body>
</html>
window.onload=函数(){
var数据=[];
var i=0;
var addData=函数(){
var-arr=[];
i++;
对于(var j=0;jIf有一个限制,它可能比您实际需要的要大得多。很好,我的脚本使用ajax增加了。我刚刚有一个非常大的页面,我想问一下,以防我需要了解未来的项目:)