JavaScript: Syntax, DOM manipulation, events, ES6+ features