Доверять, но проверять
Доверять, но проверять
Множество ошибок в JavaScript происходит просто потому, что разработчики слишком ленивы, чтобы проверить, доступен или нет данный объект или метод. Всегда при использовании какой-либо внешней переменной (которая не определена явно в этой функции) либо функционала, зависящего от браузера (например, DOM-методов), необходимо быть уверенным, что используемый объект или метод существует.
В качестве примера правильных проверок можно привести следующий код:
function color(object, color) {
if(object) {
if (color) {
if (object.style) {
object.style.color = color;
}
}
}
}
Если мы хотим убедиться, что браузер поддерживает W3C DOM, то достаточно провести следующую проверку:
if (document.getElementById) {
}
В общем случае нет никакой необходимости полагаться на передаваемую браузерами строку агента.