"JavaScript: The Definitive Guide" does go deeper, with thorough examples in all the topics mentioned in the index. It also provides examples of static types using Flow instead of TypeScript.
> In general, if a statement begins with (, [, /, +, or -, there is a chance that it could be interpreted as a continuation of the statement before, if semicolon isn`t provided.
While /, +, and - are rare in the beginning of the statement, ( and [ aren't.
From Feynman`s biography, on trying to separate the isotopes of uranium:
> It was such a shock to me to see that a committee of men (Oppenheimer, Compton, Tolman, Smyth, Urey, and Rabi) could present a whole lot of ideas, each one thinking of a new facet, while remembering what the other fella said, so that, at the end, the decision is made as to which idea was the best - summing it all up - without having to say it three times. These were very great men indeed.