JavaScript originated as a scripting language called Mocha, then was renamed LiveScript before being standardized as ECMAScript. It has core, client-side and server-side capabilities. JavaScript is dynamically typed and object-based, unlike the statically typed, class-based Java. Common uses include dynamic web page interactions, validation of HTML forms, and accessing the DOM. Code is executed in response to events like mouse clicks or form submissions.