This talk will demonstrate that, whether its double-equals coercion, iteration without
hasOwnProperty
, augmenting native prototypes or even fraternizing with the evileval
andwith
, there is a time and place for virtually every feature of JavaScript and taking the time to study and understand their potential will enrich the programming experience, just as a broader vocabulary enriches the speaking experience.
The final advice is rock solid:
It’s OK to break a rule if you understand why the rule exists and you can mitigate (or safely ignore) the concerns of the rulemakers and breaking the rule would add value