+ can mean either addition or string concatenation depending on its operands. And if neither operand is a literal (a + b), it becomes a chore to figure out which behaviour is being denoted. In the most extreme cases, one can't even statically determine this. This leads to accidental addition being a common bug even among experienced ECMAScripters.