Преобразование строки даты в формат UTC + 0530 с использованием JavaScript - PullRequest
3 голосов
/ 14 февраля 2011

У меня есть дата в формате 14-Feb-2011, но я хочу преобразовать ее в формат Mon Feb 14 10:13:50 UTC+0530 2011. Как мне этого добиться?

Ответы [ 2 ]

3 голосов
/ 14 февраля 2011

Используя new Date(Date.UTC(year, month, day, hour, minute, second)), вы можете создать объект Date из определенного времени UTC.

Я попробовал этот код, и он вернул правильную дату (в индийской локали)

var d=Date.parse("14,Feb,2011");
document.write(new Date(d));

Вывод:

Mon Feb 14 2011 00:00:00 GMT+0530 (India Standard Time) .

Вот пример преобразования между разными часовыми поясами.

<html>
<body>

<script type="text/javascript">

//Set you offset here like +5.5 for IST
var offsetIST = 5.5;


//Set you offset here like -8 for PST
var offsetPST = -8;

//Create a new date from the Given string
var d=new Date(Date.parse("14,Feb,2011"));

//To convert to UTC datetime by subtracting the current Timezone offset
var utcdate =  new Date(d.getTime() + (d.getTimezoneOffset()*60000));

//Then cinver the UTS date to the required time zone offset like back to 5.5 for IST
var istdate =  new Date(utcdate.getTime() - ((-offsetIST*60)*60000));

//Then cinver the UTS date to the required time zone offset like back to -8 for PST (Canada US)
var pstdate=  new Date(utcdate.getTime() - ((-offsetPST*60)*60000));

document.write(d);
document.write("<br/>");
document.write(utcdate);
document.write("<br/>");
document.write(istdate);
document.write("<br/>");
document.write(pstdate);
</script>

</body>
</html>

Вывод:

Mon Feb 14 2011 00:00:00 GMT+0530 (India Standard Time)
Sun Feb 13 2011 18:30:00 GMT+0530 (India Standard Time)
Mon Feb 14 2011 00:00:00 GMT+0530 (India Standard Time)
Sun Feb 13 2011 10:30:00 GMT+0530 (India Standard Time) 

Каждый раз, когда записывается IST, потому что new Date () всегда показывает дату как местный часовой пояс (то есть IST)для меня) но выше даты и времени на самом деле Оригинал , UTC , IST , PST соответственно.

0 голосов
/ 14 февраля 2011
var d = new Date("14-Feb-2011");

это даст выход Пн 14 февраля 2011 00:00:00 GMT-0500 (восточное стандартное время)

...