As part of web browsers, implementations allow client-side scripts to interact with the user,
control the browser, communicate asynchronously, and alter the document content that is displayed.
It has also become common in server-side programming, game development and
the creation of desktop applications.
has first-class functions. Its syntax was influenced by C.
but the two languages are otherwise unrelated and have very different semantics.
It is a multi-paradigm language, supporting object-oriented, imperative,
and functional programming styles.
in PDF documents, site-specific browsers, and desktop widgets—is also significant.