Common bug:
"5" - "2" // works => 3 "5" + "2" // '52' "5" * "hi" // NaN
JS coerces AND behaves inconsistently.
✔ Life-Saving Fix
Always convert:
Number(value)
or
parseInt(value, 10)
💡 Bonus Trap
parseInt("08") returns 8 but "08" == 8 is true → chaos.
