Всегда рекомендуется избегать встроенных кодов Javascript, помещая все коды в файл JS
, который включен во все страницы. Интересно, если это не вызовет проблемы с производительностью на тяжелых страницах.Почему встроенный JavaScript плохой?
Например, представьте, что у нас есть десятки функций, как этот
function function1(element){
var el=document.getElementsByClassName(element);
var size=el.length;
if(size==0) return;
for(i=0;i<size;i++){
// the process
}
}
на каждой странице, нам нужно выполнить функции, чтобы узнать, есть ли соответствующие элементы в HTML или нет.
window.onload = function(){
function1('a');
....
function26('z');
};
но если держать все функции во внешнем JS
файле, и вызов функций через инлайн JavaScript
, мы можем назвать только функции, которые требуются в данной странице:
<script type="text/javascript">
window.onload = function(){
function6('f');
};
</script>
Безразлично Не выгодно ли с точки зрения производительности вызывать функции через встроенный Javascript
(что, конечно, не самая лучшая практика), чтобы избежать вызова множества функций, которые не нужны на странице?
Конечно, это не ограничивается только функциями, так как у нас есть много addEventListener
с для всего сайта, которые открыли огонь по каждой странице, где они не нужны.
У вас может быть несколько внешних JS-файлов со всей вашей функциональностью, а затем конкретные файлы для каждой страницы. который будет содержать то, что обычно будет встроенным JS – rorypicko
Никто никогда не говорил, что каждая функция всего вашего сайта должна быть в одном файле Javascript ... почему должна быть какая-либо разница в количестве кода в вашем внешнем JS-файле по сравнению с ваш «встроенный» Javascript? – devnull69
@ RoryPicko92 главное преимущество всех JS-кодов в одном файле заключается в том, что он будет кэшироваться и не нужен для загрузки через просмотр. – Googlebot