我一直在测试一些代码,这些代码接受一个json格式的变量,并且应该打印出来,但是它打印出一个空数组。
如果我尝试这样做:
console.log(JSON.stringify({first:1,second:2}));然后我就会让页面崩溃(Chrome:“啊,猛击!”)。
我问过一些人,他们无法复制它,但我每次都能得到它。在FireFox中也进行了测试,结果也崩溃了。
代码是这样的:
var timer={first:0,second:0,third:0,fourth:0};
localStorage.setItem('saveTimers', JSON.stringify(timer));在localStorage中设置[]
发布于 2013-02-06 06:52:23
在运行了这么多次之后,我发现它崩溃了
for (var i = 0; i < 100000; i ++) {
var timer={first:0,second:0,third:0,fourth:0};
localStorage.setItem('saveTimers', JSON.stringify(timer));
}也许你运行这段代码已经很快了?这个问题的一个解决方案可能是限制您的函数,这可以通过implementing a throttle function或Underscore.js's throttle来完成。
发布于 2013-02-06 06:48:30
因此,根据我的理解,您真正遇到的问题是将内容保存到localStorage。
这看起来更像是权限问题,而不是其他问题。浏览器是否具有访问文件系统的权限?浏览器使用的文件夹是否可以写入?你试过重新安装浏览器吗?
这些是你应该检查的东西。
发布于 2013-02-06 06:56:20
如果你使用的是chrome的beta或dev版本,请仔细检查这个行为在稳定版本中是否相同,如果不是,那就是你的问题。
https://stackoverflow.com/questions/14718130
复制相似问题