使用“ new Date()”转换日期时,将添加我当前的时区。
var date = "2019-06-03T23:32:59.2354387Z";
var date1 = new Date(date);
console.log(date1);
预期结果:03-Jun-19 23:32:00
实际结果:04-Jun-19 02:32:00
请在这里找到小提琴
答案 0 :(得分:0)
默认情况下,JavaScript中的日期输出是本地时间。如果需要GMT格式,则应使用UTC get / set。
尝试一下:
utc_date = date1.toUTCString();
console.log(utc_date);
答案 1 :(得分:0)
更适合您的方案并保持格式,这应该可以工作。可惜的是,所提供的整数格式像是“ 1”而不是“ 01”,因此我不得不在变量的开头添加“ 0”。
这应该输出您想要的确切结果。
var date = new Date();
var monthNames = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug',
'Sep', 'Oct', 'Nov', 'Dec']
var day = '0' + (date.getDay() + 2); // 003
day = day.slice(-2) + '-'; // 03-
var month = date.getMonth(); // 5
month = monthNames[month]; // Jun
month = month + '-'; // Jun-
var year = date.getFullYear() + ''; // 2019
year = year.slice(-2) + ' '; // 19
var hour = '0' + date.getHours(); // 018
hour = hour.slice(-2) + ':'; // 18:
var minutes = '0' + date.getMinutes(); // 025
minutes = minutes.slice(-2) + ':'; // 25:
var seconds = '0' + date.getSeconds(); // 06
seconds = seconds.slice(-2); // 06
var now = day + month + year + hour + minutes + seconds;