I guess it's just me, but there are (parentheses), [brackets], & {braces}.
I know some like to say [square brackets] & {curly brackets}, but to me, that's redundantĀ in the 1st case & wrong & misleading, in the 2nd case. (Parenthetically... See? Underscoring can also be a form of grouping, but not in source code.) JavaScript array subscripts go in [brackets]. I'm not sure if they apply in JavaScript or not, but there are also <angle brackets>. I've seen someone call a brace a bracket, but why one would call a parenthesis a bracket is beyond me; I've never seen anyone do that before. Ask any schoolkid what ( is.
[So, did we enjoy ourselves?Ā š]
So, you're right about the count of parentheses. These "Missing ;" errors are among the hardest for me to scope out. I don't know a general rule for them. It seems to mean that the parser (part of the JavaScript interpreter) became confused somehow -- often not clearly how.
So I just check out basic structural syntax and play around with it until something clears the air -- in my experience, without my ever finding out what had been wrong & what fixed it & why it fixed it. If anyone can clarify any of this, I would be deliriously happy. I've read at StackOverflow many times about it, and I still don't get it.