Видимо, метод getYear () из объекта даты в javascript возвращает разные результаты в IE8 и Firefox3.6 (у меня есть эти 2 на моей машине, я не уверен, что другой браузер или версия)
Date d = new Date();
alert(d.getYear());
FF3.6 ==> 111 (year since 1900? i guess)
IE8 ===> 2011
Я только тестировалв Firefox и теперь мой код Javascript, который корректирует возвращаемое значение getYear (), теперь дает мне 3911 из-за моего кодирования.
var modified = d.getYear() + 1900
В Firefox он возвращает 2011. Но если я применяю этот подход в IE8, этоreturn 3911.
Я мог бы добавить логику, чтобы различать IE и Firefox, но я не хочу добавлять такие if / else везде в моем коде, где бы ни были части, зависящие от браузера, как это.Есть ли другой способ решения этой проблемы?
var browserName=navigator.appName;
if (browserName=="Netscape") {
var modified = d.getYear() + 1900
}
else if(browserName=="Microsoft Internet Explorer") {
var modified = d.getYear();
}