var s0="",s1="";
for(var i=0;i<20000;i++)
s0+="0";
for(var j=0;j<26000;j++){ //大约52000w 为length最大值
s1+=s0;
}
console.log("s1 length:"+s1.length/10000+"w");
这段代码26000时可以运行,27000时就不行,js如果定义一个超长数组或字符串该怎么实现呢~非常感谢!
var s0="",s1="";
for(var i=0;i<20000;i++)
s0+="0";
for(var j=0;j<26000;j++){ //大约52000w 为length最大值
s1+=s0;
}
console.log("s1 length:"+s1.length/10000+"w");
这段代码26000时可以运行,27000时就不行,js如果定义一个超长数组或字符串该怎么实现呢~非常感谢!
在浏览器环境中可以定义这么一个500多兆的数组,但定义一个500多兆文本就会直接报错,在nodejs就正常
let s0=''
const mArray = []
for(let i = 0; i < 20000; i++) {
s0 += '0'
}
for(let j = 0; j < 26000; j++) {
mArray.push(s0)
}
console.log('s1 length:'+(mArray.length * s0.length)/10000+'w')