У меня есть форма, в которой пользователь должен ввести дату UTC и время UTC. Соответствующие локальные дата и время будут отображаться пользователю при любом изменении полей ввода. Ниже приведен HTML-код:
<form>
UTC Date: <input type=text name=cDate value='' size=6 onchange='showLT();'>(DDMMYY)
<br>
UTC Time: <input type=text name=cTime value='' size=4 onchange='showLT();'>(HHMM)
<br>
Local Date and Time: <span id='local'></span>
</form>
<script type='text/javascript'>
function showLT() {
var A = document.forms[0].cDate.value;
var B = document.forms[0].cTime.value;
var C = new Date(A.slice(4,6), A.slice(2,4)-1, A.slice(0,2),
B.slice(0,2), B.slice(2,4), 0);
document.getElementById('local').innerHTML = C.toLocaleString();
}
</script>
У меня две проблемы:
- В течение двухзначного года я всегда думал, что это следует интерпретировать как
попадают в диапазон с 1970 по 2069 год. Однако, когда я попытался ввести
Дата UTC как 131211, год интерпретируется как 1911, а не 2011.
- Отображаемая дата показа: Ср. 13 декабря 1911 г. 08:32:00 Солод ,
я полагаю, что это время для Мальты, а не для моего региона, до которого +8 часов. У меня нет
проблема отображения моего местного времени в других функциях, где
toLocaleString()
применяется. Я удивлен, что это показывает
другой часовой пояс в этом случае.