我想將一個字符串轉換爲日期type.i我給新的日期()字符串值。 但它返回的是第二天的日期而不是我想要轉換的日期。新的日期()返回下一個日期,而不是今天的日期
var endDate = new Date("2017-03-23T23:59:59.000Z");
//結束日期值現在是2011年3月24日星期五05:29:59 GMT + 0530(印度標準時間)。
請建議我在格式MM/DD/YYYY
我想將一個字符串轉換爲日期type.i我給新的日期()字符串值。 但它返回的是第二天的日期而不是我想要轉換的日期。新的日期()返回下一個日期,而不是今天的日期
var endDate = new Date("2017-03-23T23:59:59.000Z");
//結束日期值現在是2011年3月24日星期五05:29:59 GMT + 0530(印度標準時間)。
請建議我在格式MM/DD/YYYY
這個黑客可以幫助您IST使用,
var endDate = new Date("2017-03-23T23:59:59.000Z").toISOString();
它會給你,
「2017-03-23T23:59:59.000Z」
另外,如果你想將它轉化成DD/MM/YYYY那麼你可以使用原生的JavaScript或類似的lib時刻爲, 這simpile JS將有助於將其轉換爲任何格式。
var endDate = new Date("2017-03-23T23:59:59.000Z").toISOString();
var d1 = endDate.split('T'); //spliting date from T
var d2 = d1[0].split('-'); //getting date part
console.log('yyyy/MM/dd', d2[0] + "/" + d2[1] + "/" + d2[2]) //YYYY/MM/DD
console.log("DD/MM/YYYY", d2[2] + "/" + d2[1] + "/" + d2[0])
怎樣才能得到正確的日期。如果你查看一下日期,你會看到你的日期在5小時的不同30分鐘,這是與您的日期說GMT +0530
。您的原始日期爲.000Z
,即GMT +0
的時區。
確保在使用日期時使用相同的時區。
如果你的時間是在下面
var endDate = new Date("2017-03-23T23:59:59.00+0530");
的JavaScript對象Date
沒有攜帶區信息。您看到非UTC日期的唯一原因是,瀏覽器默認選擇在控制檯中將日期顯示爲本地時間。如果你不關心的日期對象在本地時間的精確即時調心,你可以使用下面的format
功能,把它變成MM/DD/YYYY
格式:
function format (date) {
var mm = ('0' + (date.getUTCMonth() + 1)).slice(-2)
var dd = ('0' + date.getUTCDate()).slice(-2)
var yyyy = date.getUTCFullYear()
return mm + '/' + dd + '/' + yyyy
}
var endDate = new Date("2017-03-23T23:59:59.000Z")
console.log(endDate.toISOString())
console.log(format(endDate))
(Credit to Ranj張貼我之前使用Date#toISOString
一個答案。)
我創建了這裏的解決方案,請看看下面的鏈接
https://www.w3schools.com/code/tryit.asp?filename=FD0YSGRMB59W
謝謝,它的工作原理 – Arunkumar
但是,如何將該日期轉換爲MM/DD/YYYY格式? – Arunkumar
你好,我已經更新了上面的答案,希望它適合你,如果工作,請按下:) – Ranj