0

長整数を逆変換した後の次の日付変換では、日付は9月ではなく10月になっています

 var date = 2013-09-23 18:31
 startdate = getTimeStamp(date); //1382533260000

 t=1382533260000   
 rt = new Date(t)
 //Wed Oct 23 2013 18:31:00 GMT+0530 (India Standard Time)


 function getTimeStamp(strDate) { 
            var a1=strDate.split(" ");
            var d1=a1[0].split("-");
            var t1=a1[1].split(":");
            var dtObj = new Date(d1[0],d1[1],d1[2],t1[0],t1[1]);
            return dtObj.getTime();
 }
4

3 に答える 3

2

JavaScript では、月の数字は 0 ~ 11 です。

このようなコンポーネントからDateコンストラクターに解析する場合は、数値から 1 を引く必要があります。

 function getTimeStamp(strDate) { 
            var a1=strDate.split(" ");
            var d1=a1[0].split("-");
            var t1=a1[1].split(":");
            var dtObj = new Date(d1[0],d1[1] - 1,d1[2],t1[0],t1[1]);
            return dtObj.getTime();
 }
于 2013-10-08T09:37:18.317 に答える
0

月は 0 から始まるため、1 月は 0、2 月は 1 のようになります。

d1[1]-1したがって、new Date()コンストラクターで使用する必要があります。

于 2013-10-08T09:35:33.833 に答える
0

Javascript の月のパラメーターは 0 から 11 までなので、8 を渡すと 9 月を意味します

于 2013-10-08T09:36:58.407 に答える