https://www.youtube.com/watch?v=Qlr-FGbhKaI&feature=youtu.be You cannot turn off ASI within Javascript, so there are also some cases creating errors even by using semicolons permanently. In essence: Using semicolons or not is not a matter of protecting your code in a better way. It is a convenience decision of you and/or your team. Some people want to use them, others don't use them. It is totally ok. There are better tools, especially linting based, e.g.. standard.js - they are able to detect most edge cases.