Привычка исходит от страха.Боязнь «сломанных» js-компрессоров (у меня были некоторые проблемы с Plone-компрессорами с устаревшими js, у которых, например, не было оператора var
), боязнь возможных неудачных реализаций браузера, список можно продолжить.Итак, почему бы просто не использовать ;
везде и избегать всех этих ловушек?
Проблема этого подхода (просто всегда используйте точки с запятой без дополнительного объяснения) состоит в том, что вы не пытаетесь понять, почему вы делаетеэто, во-первых, вы просто делаете, потому что кто-то сказал вам это делать, и, ИМХО, это тоже может быть вредно.И сломанные компрессоры, которые вы имели в прошлом, теперь исправлены, и вы продолжаете вставлять точки с запятой ... ломать привычки сложно.Мы просто продолжаем делать что-то, потому что «мы всегда это делали».
Многим новым программистам JavaScript рекомендуется просто использовать точки с запятой везде и ожидать, что, если они намеренно не используют правила вставки точек с запятой, они могутсмело игнорируйте существование всей этой языковой функции.Это не так из-за ограниченного производства, описанного выше, в частности, оператора return.Осознавая проблему ограниченного производства, программисты могут чрезмерно опасаться разрывов строк и избегать их, даже если это повысит ясность.Лучше быть знакомым со всеми правилами для ASI, чтобы иметь возможность читать любой код независимо от того, как он написан, и писать код, который настолько ясен, насколько это возможно.
Вот большой ресурс об этой теме и источник цитаты.Отличное чтение.
Итак, какой стиль лучше? В той степени, в которой существует объективно «лучший» выбор, мне кажется, что точка с запятой / запятаяпервый стиль немного лучше, потому что он в основном более сканируемый и потому что он поощряет программистов лучше понимать язык, который они используют.
... и вторая цитата из статьи с более широкими возможностями , против всегда использования точек с запятой.Отличное чтение.