Category:JavaScript: Difference between revisions

From Rosetta Code
Content added Content deleted
(Added Programming Language template)
m (Added link to Tasks not implemented in JavaScript)
 
(25 intermediate revisions by 10 users not shown)
Line 1: Line 1:
{{language|JavaScript
{{Programming Language}}'''JavaScript''' is the name of Netscape Communications Corporation's implementation of the ECMAScript standard, a scripting language based on the concept of prototype-based programming. The language is best known for its use in websites (as client-side JavaScript), but is also used to enable scripting access to objects embedded in other applications.
|strength=weak
|express=implicit
|checking=dynamic
|gc=yes
|parampass=value
|LCT=yes
|bnf=http://javascript.comsci.us/syntax/statement/bnf.html}}{{language programming paradigm|Object-oriented}}{{language programming paradigm|functional}}
'''JavaScript''' is the name of Netscape Communications Corporation's implementation of the [[ECMAScript standard]], a scripting language based on the concept of prototype-based programming. The language is best known for its use in websites (as client-side JavaScript), but is also used to enable scripting access to objects embedded in other applications.


Despite the name, JavaScript is only distantly related to the [[Java]] programming language, the main similarity being their common debt to the [[C]] syntax. Semantically, JavaScript syntax has far more in common with the [[Self]] [[programming language]].
Despite the name, JavaScript is only distantly related to the [[Java]] programming language, the main similarity being their common debt to the [[C]] syntax. Semantically, JavaScript syntax has far more in common with the [[Self]] [[programming language]].


JavaScript is a registered trademark of Sun Microsystems, Inc. It was used under license for technology invented and implemented by Netscape Communications and current entities such as the Mozilla Foundation.
JavaScript is a registered trademark of [[Sun Microsystems]], Inc. It was used under license for technology invented and implemented by Netscape Communications and current entities such as the Mozilla Foundation.


Major browsers have generally implemented the features of ECMASScript 5 (ES5), and have started to adopt elements of ES6.
JavaScript has been born again, now that [[AJAX]] has come up. The meaning of this, is simply that [[AJAX]] has shown that JavaScript is really still useful, in a lot of domains, and that, using it, (most) web pages can be given a whole new life.
Updates to implementation of ES6 features are tabulated here: [https://kangax.github.io/compat-table/es6/ https://kangax.github.io/compat-table/es6/]

Once largely confined to browser environments, and typically isolated from access to system resources, JavaScript (and particularly the cross-platform [https://nodejs.org/en/ Node.js runtime environment]) is now very widely used in server-side and application scripting environments, with full access to local file systems and other OS resources.

At the same time, mainly because of JavaScript's role in the web, there is a growing number of other languages which [https://github.com/jashkenas/coffeescript/wiki/list-of-languages-that-compile-to-js compile to JavaScript].

The inclusion of '''tail-call optimisation''' in the ES6 standard reflects increased interest in functional approaches to the composition of JavaScript code, expressed for example, in significant adoption of libraries like Underscore and Lodash. If ES6 tail-call optimisation is widely implemented by JavaScript engines (so far this has mainly been achieved only by Apple's Safari engine) it will make JavaScript a more efficient and more natural environment for coding in a functional idiom.


==Citations==
==Citations==
* [http://en.wikipedia.org/wiki/Javascript Wikipedia:Javascript]
* [[wp:Javascript|Wikipedia:Javascript]]
* [https://nodejs.org/en/ Node.js] Event-driven I/O server-side JavaScript environment based on V8
* [https://www.npmjs.com npm – Node.js Package Manager] Claims to be the largest ecosystem of open source libraries in the world
* [https://developer.apple.com/library/mac/releasenotes/InterapplicationCommunication/RN-JavaScriptForAutomation/Articles/Introduction.html OS X JavaScript for Applications] JavaScript as an OS X scripting language – supported by the Safari debugger
* [https://developer.mozilla.org/en-US/docs/Web/JavaScript/Shells Other JavaScript shells] List maintained by Mozilla
* [https://github.com/jashkenas/coffeescript/wiki/list-of-languages-that-compile-to-js List of languages that compile to JS] maintained on Github by Jeremy Ashenas – author of CoffeeScript, Underscore and Backbone
* [http://shop.oreilly.com/product/0636920028857.do Functional JavaScript] – Michael Fogus, O'Reilly 2013

==To do==
[[Tasks not implemented in JavaScript]]

Latest revision as of 12:40, 29 December 2023

Language
JavaScript
This programming language may be used to instruct a computer to perform a task.
Garbage collected: Yes
Parameter passing methods: By value
Type strength: Weak
Type expression: Implicit
Type checking: Dynamic
See Also:
Listed below are all of the tasks on Rosetta Code which have been solved using JavaScript.

JavaScript is the name of Netscape Communications Corporation's implementation of the ECMAScript standard, a scripting language based on the concept of prototype-based programming. The language is best known for its use in websites (as client-side JavaScript), but is also used to enable scripting access to objects embedded in other applications.

Despite the name, JavaScript is only distantly related to the Java programming language, the main similarity being their common debt to the C syntax. Semantically, JavaScript syntax has far more in common with the Self programming language.

JavaScript is a registered trademark of Sun Microsystems, Inc. It was used under license for technology invented and implemented by Netscape Communications and current entities such as the Mozilla Foundation.

Major browsers have generally implemented the features of ECMASScript 5 (ES5), and have started to adopt elements of ES6. Updates to implementation of ES6 features are tabulated here: https://kangax.github.io/compat-table/es6/

Once largely confined to browser environments, and typically isolated from access to system resources, JavaScript (and particularly the cross-platform Node.js runtime environment) is now very widely used in server-side and application scripting environments, with full access to local file systems and other OS resources.

At the same time, mainly because of JavaScript's role in the web, there is a growing number of other languages which compile to JavaScript.

The inclusion of tail-call optimisation in the ES6 standard reflects increased interest in functional approaches to the composition of JavaScript code, expressed for example, in significant adoption of libraries like Underscore and Lodash. If ES6 tail-call optimisation is widely implemented by JavaScript engines (so far this has mainly been achieved only by Apple's Safari engine) it will make JavaScript a more efficient and more natural environment for coding in a functional idiom.

Citations

To do

Tasks not implemented in JavaScript

Subcategories

This category has the following 3 subcategories, out of 3 total.

Pages in category "JavaScript"

The following 200 pages are in this category, out of 799 total.

(previous page) (next page)

C

(previous page) (next page)