Just like new lines between statements, and tabs/spaces used for indentation, semicolons, in my opinion, make the code more organized and readable. Semicolons, similar to a dangling comma at the end of an argument list or last object prop, is a sign of respect for the next developer to work on the code, including yourself. One liners, people copy from StackOverflow, are not readable code — trying to decipher 5 functions concatenated into a single line is just not what human brain wants to be doing. Write code with brackets, commas and semicolons and let the minifier do its job.