2016-08-09 1 views
0

им пытаются получить объект даты с текущим временем конкретного часового пояса,Jquery объекта дата, часовой пояс

var options = { 
     timeZone: 'Asia/Novokuznetsk', 
     year: 'numeric', month: 'numeric', day: 'numeric', hour: 'numeric', minute: 'numeric', second: 'numeric', hour12: false 
    }, 
    formatter = new Intl.DateTimeFormat([], options), 
    date_string = formatter.format(new Date()),  
    dsplit = date_string.split(","), 
    date_arr = dsplit[0].split("/"), 
    time_arr = dsplit[1].split(":"), 
    now = new Date(date_arr[2], date_arr[0] - 1, date_arr[1], time_arr[0], time_arr[1], time_arr[2]); 

И now выводит текущее время конкретного часового пояса. Основная проблема заключается в том, что не все временные интервалы поддерживаются этим примером. Есть ли лучший способ получить дату объекта текущего времени в конкретный часовой пояс?

ответ

0

Адомас: Попробуйте следующий код, чтобы указать любой часовой пояс на функцию calcTime:

<html> 
<head> 
<script language="JavaScript"> 

// function to calculate local time 
// in a different city 
// given the city's UTC offset 
function calcTime(city, offset) { 

    // create Date object for current location 
    d = new Date(); 

    // convert to msec 
    // add local time zone offset 
    // get UTC time in msec 
    utc = d.getTime() + (d.getTimezoneOffset() * 60000); 

    // create new Date object for different city 
    // using supplied offset 
    nd = new Date(utc + (3600000*offset)); 

    // return time as a string 
    return "The local time in " + city + " is " + nd.toLocaleString(); 

} 

// get Bombay time 
alert(calcTime('Bombay', '+5.5')); 

// get Singapore time 
alert(calcTime('Singapore', '+8')); 

// get London time 
alert(calcTime('London', '+1')); 

</script> 
</head> 
<body> 

</body> 
</html> 

Ссылка: http://www.techrepublic.com/article/convert-the-local-time-to-another-time-zone-with-this-javascript/

+0

Я думаю, ваше предложение должно соответствовать, но я не знаю, смещение. Формат часового пояса Азия/Новокузнецк, Юпоре/Киев и т. Д. –

+0

Вы можете получить фактическое смещение: var offset = new Date(). GetTimezoneOffset(); console.log (смещение); –

+0

И это было бы компенсировано моим часовым поясом. Как узнать смещение времени между Европой и Киевом, если я не знаю текущее время в Киеве? –

 Смежные вопросы

  • Нет связанных вопросов^_^