Нужно ли мало кода на JavaScript подключать отдельным файлом?

12
Dmitriy_2014
На сайте с 01.07.2014
Offline
344
952

Всем привет!

Хотел спросить, как вы думаете, стоит ли небольшую часть JavaScript кода, иногда состоящую из одной или нескольких команд, которые отображают или разворачивают DIV блок или иной элемент, убирать в отдельный файл *.js и подключать его используя ссылку в HTML документе.

Многие руководства рекомендуют отделять JavaScript от HTML кода, но если код не очень большой, то есть ли в этом какой-то практический смысл? Безусловно если код очень большой и не очень важный лучше его подключить отдельным файлом и где-нибудь в конце документа, обычно перед тегом BODY. А так че получается две строчки кода и из-за них клепать файлы и подключать как отдельную библиотеку.

И с точки зрения теории, это разве приведет к увеличению скорости загрузки или потери какие, может тайный смысл есть какой-то.

П.С.

Извиняюсь если было и всем заранее спасибо за ответы.

D
На сайте с 14.01.2007
Offline
153
#1
Dmitriy_2014:
часть JavaScript кода, иногда состоящую из одной или нескольких команд,

оставляйте в html. когда вам надо будет вынести в отдельный файл, вы сами поймёте

iworkshop
На сайте с 22.12.2008
Offline
195
#2

Смысл раскидывать эти обрезки по файлам?

Руководствуйтесь логикой, зачастую это полезней чем слепо следовать всяким руководствам.

XMLRiver - прямая выдача Google и Яндекс через API
богоносец
На сайте с 30.01.2007
Offline
769
#3
Dmitriy_2014:
это разве приведет к увеличению скорости загрузки или потери какие, может тайный смысл есть какой-то

К увеличению времени загрузки это приведёт. См на страницах яндекса/гугла сколько css/js в HTML

Выносить в отдельный файл ... раньше старались в случае необходимости закрывания JS от гугла в robots.txt

но вам вроде этого не надо.

M
На сайте с 04.12.2013
Offline
223
#4

Dmitriy_2014, выносите. Некоторые технологии того требуют. Всякие onclick="..." тоже желательно.

---------- Добавлено 17.12.2017 в 12:34 ----------

С др. стороны совет Динозавра не лишен смысла.

Домены и скрипт для коротких ссылок: https://u75.ru/domains-for-shortcuts
S
На сайте с 30.09.2016
Offline
469
#5

Dmitriy_2014, и так, и так можно - в зависимости от конкретной ситуации. Но что точно нельзя делать - это подключать 100500 маленьких файлов. Эти маленькие фрагменты надо по возможности объединять в одном файле.

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
Z0
На сайте с 03.09.2009
Online
813
#6

Если на всех страницах и их много - можно в файл вынести... Я так делаю.

Если можно сократить код - я сокращаю как могу 🍿

CP
На сайте с 12.08.2009
Offline
101
#7

Можно все мелочи собрать в один модуль. Сразу приучивайте себя к структурности, даже в мелочах, это поможет когда будете писать что то большое да и расширить старое.

Профессиональный frontend: JS, html,css, Single-Page App (/ru/forum/964386)
Mik Foxi
На сайте с 02.03.2011
Offline
1183
#8

Выносить и Content-Security-Policy с запретом inline js скриптов прописать, ну так, на всякий случай.

Антибот, антиспам, веб фаервол, защита от накрутки поведенческих: https://antibot.cloud/ (Зеркало: https://антибот.рф/ ) Форум на замену серчу: https://foxi.biz/
M
На сайте с 04.12.2013
Offline
223
#9

Во-во. Я как раз CSP и подразумевал.

Dmitriy_2014
На сайте с 01.07.2014
Offline
344
#10

Всем спасибо за ответы и мнения.

Sitealert:
Dmitriy_2014, и так, и так можно - в зависимости от конкретной ситуации. Но что точно нельзя делать - это подключать 100500 маленьких файлов. Эти маленькие фрагменты надо по возможности объединять в одном файле.

Вот мне тоже что-то подсказывает что много файлов с маленьким кодом подключать не стоит, уж лучше они сразу в HTML разметке останутся.

А насчет объединять в одном файле это конечно вариант, правда получится что множество разных управляемых элементов в одном подключаемом файле.

В общем, если там две, три строчки кода, то можно оставить, а если большой скрипт получается, то лучше вынести и подключить отдельным файлом. Или как вариант скомпоновать мелкие части кода в один файл, но тут тоже вопрос.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий