На скольких строках может быть JavaScript? - PullRequest
2 голосов
/ 27 января 2012

Я пишу небольшой пользовательский минификатор для javascript, и мне интересно, нужно ли мне принудительно разрывать строки после определенного количества символов в одной строке, или это вообще имеет значение?

Например, я могу минимизировать весь сценарий в одну строку с тысячами символов или каждые n символов, я мог бы вставить разрыв строки (в приемлемой точке в коде js), чтобы перебросить его на следующую строку.

Есть ли причина для этого, или javascript / браузерам не важно, сколько символов в строке?

Ответы [ 3 ]

2 голосов
/ 27 января 2012

Я бы не хотел ставить свой сайт на различные веб-серверы, прокси-серверы, Internet Explorer и т. Д., Которые не подавляются на огромных длинах линий. Конечно, я не знаю, как бы я определил огромный , но jQuery - в качестве примера - выглядит так, что он ограничивается примерно 512 символами в строке. Проще говоря, я бы предпочел ваш минификатор, если бы он позволял мне выбирать, есть ли у меня разрывы строк через каждые x символов или нет.

2 голосов
/ 28 января 2012

Есть некоторые подводные камни в отношении длинных строк JavaScript. Ниже приведены ответы на часто задаваемые вопросы по компилятору ( эта ссылка ):

Почему в скомпилированных скриптах есть случайные переводы строк?

Компилятор Closure намеренно добавляет разрывы строк каждые 500 символов или около того. Брандмауэры и прокси-серверы иногда портят или игнорируют большие файлы JavaScript с очень длинными строками. Добавление разрывов строк каждые 500 символов предотвращает эту проблему. Удаление разрывов строк не влияет на семантику скрипта. Влияние на размер кода невелико, и компилятор оптимизирует размещение разрыва строки, чтобы размер кода был еще меньше при сжатии файлов.

1 голос
/ 27 января 2012

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

Однако разбиение содержимого на строки размером около 4 КБ может быть полезным для загрузчика, немного улучшая производительность.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...