JavaScript (/ˈdʒɑːvəˌskrɪpt/; JS) is a dynamic computer programming language. It is most commonly used as part of web browsers, whose implementations allow client-side scripts to interact with the user, control the browser, communicate asynchronously, and alter the document content that is displayed. It is also being used in server-side network programming (with Node.js), game development and the creation of desktop and mobile applications.
JavaScript is classified as a prototype-based scripting language with dynamic typing and has first-class functions. This mix of features makes it a multi-paradigm language, supporting object-oriented, imperative, and functional programming styles.
Despite some naming, syntactic, and standard library similarities, JavaScript and Java are otherwise unrelated and have very differentsemantics. The syntax of JavaScript is actually derived from C, while the semantics and design are influenced by Self and Schemeprogramming languages.
The application of JavaScript in use outside of web pages—for example, in PDF documents, site-specific browsers, and desktop widgets—is also significant. Newer and faster JavaScript VMs and platforms built upon them (notably Node.js) have also increased the popularity of JavaScript for server-side web applications. On the client side, JavaScript was traditionally implemented as an interpretedlanguage but just-in-time compilation is now performed by recent (post-2012) browsers.
JavaScript was formalized in the ECMAScript language standard and is primarily used as part of a web browser (client-side JavaScript). This enables programmatic access to objects within a host environment.