js计算日期为什么相差30天?

WSDN 发布于 2013/08/09 15:48
阅读 827
收藏 0
下面的这段js计算日期为啥不对啊?相差30天,问题出在哪儿?
function djs(){
	var urodz = new Date(2013,7,8);
	var now = new Date();
	var date = now.getTime()- urodz.getTime();
	var time = Math.floor(date / (1000 * 60 * 60 * 24)); 
	if(time > 0)
	{   
	  document.write(time);
	}else{
		document.write("0");
		}
}

以下是问题补充:

@WSDN:这个计算结果正常的话应该是30天吧? 出来的结果是1 (2013/08/09 15:49)
加载中
0
天冰
天冰
你计算的是 2013-08-08 到 今天 当然是1天了。
月份的1月 是0 ,12月是11
sxgkwei
sxgkwei
回复 @忘我 : 乌龙了。。
WSDN
WSDN
var urodz = new Date(2013,7,8); 不是7月8日吗
0
天冰
天冰
var myDate = new Date();
myDate.getYear(); //获取当前年份(2位)
myDate.getFullYear(); //获取完整的年份(4位,1970-????)
myDate.getMonth(); //获取当前月份(0-11,0代表1月)
myDate.getDate(); //获取当前日(1-31)
myDate.getDay(); //获取当前星期X(0-6,0代表星期天)
myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数)
myDate.getHours(); //获取当前小时数(0-23)
myDate.getMinutes(); //获取当前分钟数(0-59)
myDate.getSeconds(); //获取当前秒数(0-59)
myDate.getMilliseconds(); //获取当前毫秒数(0-999)
myDate.toLocaleDateString(); //获取当前日期
var mytime=myDate.toLocaleTimeString(); //获取当前时间

myDate.toLocaleString( ); //获取日期与时间

可以查查文档~ 

0
简单1
简单1
var urodz = new Date(2013,7,8);
//返回的结果是
Thu Aug 08 2013 00:00:00 GMT+0800 (中国标准时间)
var now = new Date();
//返回当前时间

//刚好是月份则是加1

//一般不推荐使用new Date("参数");  ps:求最佳答案
返回顶部
顶部