JS Stack overflow at line 错误

本文详细阐述了在项目中遇到的日期库date.js与异步方法结合使用时产生的StackOverflow错误,重点分析了问题所在并提供了解决方案。通过将创建时间戳的方式从`var now = new Date();`更改为`var now = new Date().getTime();`,成功解决了在部分页面中出现的错误,特别是针对IE浏览器的情况。本文对于理解JavaScript中日期对象的正确使用和避免浏览器兼容性问题具有指导意义。
项目中用到了date.js

/**
* Version: 1.0 Alpha-1
* Build Date: 13-Nov-2007
* Copyright (c) 2006-2007, Coolite Inc. (http://www.coolite.com/). All rights reserved.
* License: Licensed under The MIT License. See license.txt and http://www.datejs.com/license/.
* Website: http://www.datejs.com/ or http://www.coolite.com/datejs/
*/
Date.CultureInfo={...
...

然后再自己定义的异步方法中new了个Date做时间戳.结果大部分情况都ok。但是
在某些用到date.js页面中.再调用异步方法发则会出错。
Stack overflow at line:40

或者
Stack overflow at line:168870196

IE8调试定位到是时间js问题。

[img]http://dl.iteye.com/upload/attachment/569693/a5aa9cdf-75da-3537-aacc-1ec3de7f9ad5.bmp[/img]
最后更改创建变量的方式.
由:
var now=new Date();

改为:
var now=new Date().getTime();

问题fix。
FF下不出现异常只在IE中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值