При написании любого программного кода у разных разработчиков будут разные мнения. Но всегда полезно обратиться к нему, и вот 14 лучших советов по написанию JS-кода от Javascript Toolbox , переведенных Sofish ( 1 , 2 ).
1. Всегда используйте «var»
В JavaScript переменные имеют либо глобальную область действия, либо область действия функции, и использование ключевого слова «var» будет ключом к тому, чтобы переменные были краткими и понятными. При объявлении переменной, которая является глобальной или функциональной, всегда добавляйте ключевое слово «var». В следующем примере будут показаны потенциальные проблемы, связанные с невыполнением этого требования.
Проблемы, вызванные неиспользованием Var
var i=0 // Это хорошо — создаётся глобальная переменная
функция тест() {
для (я=0; я<10; я++) {
alert("Привет, мир!");
}
}
тест();
alert(i); // Глобальная переменная i теперь равна 10!
Поскольку переменная i в переменной функции не использует var, чтобы сделать ее переменной уровня функции, в этом примере она ссылается на глобальную переменную. Обычной практикой является всегда использовать var для объявления глобальных переменных, но крайне важно использовать var для определения переменной области функции. Следующие два метода функционально эквивалентны:
правильная функция
функция тест() {
вар я = 0;
для (я=0; я<10; я++) {
alert("Привет, мир!");
}
}
правильная функция
функция тест() {
for (var i=0; i<10; i++) {
alert("Привет, мир!");
}
}
2. Обнаружение функций, а не обнаружение браузера
Написан некоторый код для определения версии браузера и выполнения с ней различных действий в зависимости от клиента, который использует пользователь. В целом это очень плохая практика. Лучшим подходом является использование обнаружения функций. Прежде чем использовать расширенную функцию, которая может не поддерживаться старыми браузерами, сначала проверьте, есть ли в браузере эта функция или функция, а затем используйте ее. Лучше определить только версию браузера, даже если вы знаете его производительность. Подробную статью, посвященную этому вопросу, можно найти по адресу http://www.jibbering.com/faq/faq_notes/not_browser_detect.html .
пример:
если (document.getElementById) {
элемент var = document.getElementById('MyId');
}
еще {
alert('В вашем браузере отсутствуют возможности, необходимые для запуска этого скрипта!');
}
Источник: Счастливые избранные