看到过实现天数 ,月数的代码  不过小时差却不知道怎么搞,求大家帮忙!

解决方案 »

  1.   

    还不是一样的么。。var date1 = new Date('2013/04/02 18:00')
    var date2 = new Date('2013/04/02 19:22:21')var s1 = date1.getTime(),s2 = date2.getTime();
    var total = (s2 - s1)/1000;
    var day = parseInt(total / (24*60*60));//计算整数天数
    var afterDay = total - day*24*60*60;//取得算出天数后剩余的秒数
    var hour = parseInt(afterDay/(60*60));//计算整数小时数
    var afterHour = total - day*24*60*60 - hour*60*60;//取得算出小时数后剩余的秒数
    var min = parseInt(afterHour/60);//计算整数分
    var afterMin = total - day*24*60*60 - hour*60*60 - min*60;//取得算出分后剩余的秒数
    console.log([day,hour,min,afterMin].join(':'))当然我这里只是算到天,没算年,道理是一样的,算法自己优化一下。
      

  2.   


    我是2013-1-1 12:00的日期格式 怎么减 我用date1.value - date2.value 得不到所需的值
      

  3.   


    你的getTime函数呢?我的日期格式是2013-1-1 12:00
      

  4.   


    getTime在第四行。字符串转Data在前两行,必须要特定格式的字符串,你那样不行。要先对字符串做预处理处理成2012/01/01 12:00这样的格式。这个不难,自己解决下。
      

  5.   

    =,=这个你要先把你的字符串解析成Date对象咯。。
    最简单的是你服务端不要返回这种日期格式..直接返回日期的数字值.就可以直接new Date(value)来得到Date对象..然后两个Date对象可以直接用减法的..不需要调用getTime()方法