Зробити правила крапки з комою просто
Кожен рядок , яка починається з (
, [
`, або будь-який оператор (/, +, - єдиним дійсними ті), повинен починатися крапкою з комою.
func()
;[0].concat(myarr).forEach(func)
;(myarr).forEach(func)
;`hello`.forEach(func)
;/hello/.exec(str)
;+0
;-0
Це запобігає а
func()[0].concat(myarr).forEach(func)(myarr).forEach(func)`hello`.forEach(func)/hello/.forEach(func)+0-0
жахливість.
Додаткова примітка
Зазначимо, що буде: дужки будуть індексувати, круглі дужки розглядаються як параметри функції. Зворотний вибір перетвориться в тег з шаблоном , і регулярні вирази або явно підписані цілі числа перетворяться в оператори. Звичайно, ви можете просто додати крапку з комою до кінця кожного рядка. Добре пам’ятати, хоча, коли ви швидко розробляєте прототип і скидаєте крапки з комою.
Крім того, додавання крапки з комою до кінця кожного рядка не допоможе вам у наступному, тому пам’ятайте про такі твердження, як
return // Will automatically insert semicolon, and return undefined.
(1+2);
i // Adds a semicolon
++ // But, if you really intended i++ here, your codebase needs help.
Вищенаведений випадок стане поверненням / продовженням / перервою / ++ / -. Будь-який лінійник сприймає це за допомогою мертвого коду або ++ / - синтаксичної помилки (++ / - ніколи не відбудеться реально).
Нарешті, якщо ви хочете, щоб з'єднання файлів працювало, переконайтеся, що кожен файл закінчується крапкою з комою. Якщо ви використовуєте програму-постачальник (рекомендується), вона повинна робити це автоматично.