JavaScript
Dan Tobias (Talk | contribs) (→Programs and libraries) |
(sample files) |
||
(11 intermediate revisions by 3 users not shown) | |||
Line 7: | Line 7: | ||
|released=1995 | |released=1995 | ||
}} | }} | ||
− | '''JavaScript''' (sometimes abbreviated JS) is a scripting language commonly implemented as part of a web browser in order to create enhanced user interfaces and dynamic websites, but also used in other contexts (such as server-side JavaScript). | + | '''JavaScript''' (sometimes abbreviated JS) is a scripting language commonly implemented as part of a web browser in order to create enhanced user interfaces and dynamic websites, but also used in other contexts (such as server-side JavaScript). As a client-side language in a browser, JavaScript has access to a Document Object Model (DOM) which permits it to read and modify various aspects of the current web page. |
This is not the same as [[Java]]. People constantly [https://www.youtube.com/watch?v=GMTNIrS2X8U get confused] about that. | This is not the same as [[Java]]. People constantly [https://www.youtube.com/watch?v=GMTNIrS2X8U get confused] about that. | ||
Line 13: | Line 13: | ||
JavaScript was originally developed at Netscape by Brendan Eich (who later became Mozilla CEO... very briefly), where it was originally called LiveScript while under development, but became JavaScript (with the name licensed from Sun) in order to capitalize on the popularity of Java, though the languages aren't really related (although there are some similarities in syntax). Later, a Microsoft implementation designed to be (more or less) compatible was called JScript, and an attempt at a formally standardized version of the language was published by ECMA as [[ECMAScript]]. | JavaScript was originally developed at Netscape by Brendan Eich (who later became Mozilla CEO... very briefly), where it was originally called LiveScript while under development, but became JavaScript (with the name licensed from Sun) in order to capitalize on the popularity of Java, though the languages aren't really related (although there are some similarities in syntax). Later, a Microsoft implementation designed to be (more or less) compatible was called JScript, and an attempt at a formally standardized version of the language was published by ECMA as [[ECMAScript]]. | ||
− | The [[node.js]] runtime environment is (mostly) implemented in JavaScript, as are applications running within it. | + | The [[node.js]] runtime environment is (mostly) implemented in JavaScript, as are applications running within it. It made JavaScript into a server-side language in addition to its traditional uses as a client-side language. |
− | + | [[TypeScript]] is an extension of JavaScript with strong typing, which compiles into regular JavaScript. | |
+ | |||
+ | [[React]] is an extension of JavaScript to support various methods of creating [[HTML]] elements and interacting with them, including embedding code resembling (but not quite identical to) HTML. This is another variant which is compiled into regular JavaScript for browser use. | ||
+ | |||
+ | Due to its status as the only scripting language for browsers, JavaScript skyrocketed in popularity in the 2000's and 2010's and as of 2017 serves as a lingua franca of Web development. Arguably, it is currently the world's most popular programming language (it tops [http://langpop.corger.nl/ GitHub and StackOverflow] currently). A number of other languages have implementations that compile into JavaScript. | ||
== Documentation, Reference, and Programming Tips == | == Documentation, Reference, and Programming Tips == | ||
Line 35: | Line 39: | ||
* [http://www.playfuljs.com/a-first-person-engine-in-265-lines/ First person game engine in 265 lines of JavaScript] | * [http://www.playfuljs.com/a-first-person-engine-in-265-lines/ First person game engine in 265 lines of JavaScript] | ||
* [http://www.developerdrive.com/2015/01/40-essential-javascript-tools-for-the-web/ 40+ essential JavaScript tools for the Web] | * [http://www.developerdrive.com/2015/01/40-essential-javascript-tools-for-the-web/ 40+ essential JavaScript tools for the Web] | ||
+ | * [https://github.com/walterhiggins/ScriptCraft ScriptCraft: Write Minecraft plugins in JavaScript] | ||
+ | * [http://vanilla-js.com/ VanillaJS framework] | ||
+ | * [http://www.javaworld.com/article/3071339/scripting-jvm-languages/new-javascript-library-brings-java-to-browsers-without-applets.html New JavaScript library brings Java to browsers without applets] | ||
== Other links and references == | == Other links and references == | ||
Line 49: | Line 56: | ||
* [http://ws-dl.blogspot.com/2014/06/2014-06-18-google-and-javascript.html Google and JavaScript] | * [http://ws-dl.blogspot.com/2014/06/2014-06-18-google-and-javascript.html Google and JavaScript] | ||
* [http://www.stitcher.com/podcast/ruby-rogues/javascript-jabber/e/124-jsj-the-origin-of-javascript-with-brendan-eich-35282918 The Origin of Javascript with Brendan Eich (Podcast)] | * [http://www.stitcher.com/podcast/ruby-rogues/javascript-jabber/e/124-jsj-the-origin-of-javascript-with-brendan-eich-35282918 The Origin of Javascript with Brendan Eich (Podcast)] | ||
+ | * [http://isomorphic.net/javascript Isomorphic JavaScript] | ||
+ | * [http://eloquentjavascript.net/ Eloquent Jvascript (free online book)] | ||
+ | * [https://blog.mozilla.org/javascript/2015/02/26/the-path-to-parallel-javascript/ The path to parallel JavaScript] | ||
+ | * [http://newstechnica.com/2014/03/27/mozilla-announces-javascript-for-heterosexuals/ Javascript For Heterosexuals]... Now with [http://www.reddit.com/r/ainbow/comments/21hzcb/mozilla_announces_javascript_for_heterosexuals/cgdejzd code examples]. (Some [http://www.channel4.com/news/mozilla-chief-executive-twitter-gay-marriage-resign background], and [https://brendaneich.com/2014/03/inclusiveness-at-mozilla/ an official statement].) | ||
+ | * [https://new.devchat.tv/js-jabber/124-jsj-the-origin-of-javascript-with-brendan-eich/ The Origin of Javascript with Brendan Eich (podcast)] | ||
+ | |||
+ | == Sample files == | ||
+ | * {{DexvertSamples|text/js}} | ||
+ | |||
+ | [[Category:Netscape]] |
Latest revision as of 15:27, 30 July 2024
JavaScript (sometimes abbreviated JS) is a scripting language commonly implemented as part of a web browser in order to create enhanced user interfaces and dynamic websites, but also used in other contexts (such as server-side JavaScript). As a client-side language in a browser, JavaScript has access to a Document Object Model (DOM) which permits it to read and modify various aspects of the current web page.
This is not the same as Java. People constantly get confused about that.
JavaScript was originally developed at Netscape by Brendan Eich (who later became Mozilla CEO... very briefly), where it was originally called LiveScript while under development, but became JavaScript (with the name licensed from Sun) in order to capitalize on the popularity of Java, though the languages aren't really related (although there are some similarities in syntax). Later, a Microsoft implementation designed to be (more or less) compatible was called JScript, and an attempt at a formally standardized version of the language was published by ECMA as ECMAScript.
The node.js runtime environment is (mostly) implemented in JavaScript, as are applications running within it. It made JavaScript into a server-side language in addition to its traditional uses as a client-side language.
TypeScript is an extension of JavaScript with strong typing, which compiles into regular JavaScript.
React is an extension of JavaScript to support various methods of creating HTML elements and interacting with them, including embedding code resembling (but not quite identical to) HTML. This is another variant which is compiled into regular JavaScript for browser use.
Due to its status as the only scripting language for browsers, JavaScript skyrocketed in popularity in the 2000's and 2010's and as of 2017 serves as a lingua franca of Web development. Arguably, it is currently the world's most popular programming language (it tops GitHub and StackOverflow currently). A number of other languages have implementations that compile into JavaScript.
Contents |
[edit] Documentation, Reference, and Programming Tips
- Mozilla JavaScript reference
- Table of how various zero, null, and infinity values are treated by various JavaScript operators
- Screencast: Debugging an Ember.js Application
[edit] Programs and libraries
- JSMESS: JavaScript-based in-browser emulator of classic computers
- pepper.js
- asm.js: subset of JavaScript to serve as target for compilers
- An examination of asm.js (stripped-down subset of JavaScript designed to run faster)
- ember.js framework (for creating web apps)
- gamepad.js: use gamepads and joysticks with a browser
- Some incredibly useful JavaScript: Add fart sounds to your web page!
- BridgeIt: JavaScript library to add native mobile features to web apps
- sql.js: Port of SQLite to JavaScript
- Realistic terrain in 130 lines of JavaScript
- First person game engine in 265 lines of JavaScript
- 40+ essential JavaScript tools for the Web
- ScriptCraft: Write Minecraft plugins in JavaScript
- VanillaJS framework
- New JavaScript library brings Java to browsers without applets
[edit] Other links and references
- JavaScript (Wikipedia)
- JavaScript video lectures by Douglas Crockford
- Using Javascript to Keep Us Safe From Terrorists
- Web-based distributed computing project using JavaScript to solve chess problem
- Tessel: JavaScript right on the hardware
- Asm.js: Ending The Ice Age of JavaScript
- How many of you support users with no JS?
- CodeCombat: Learn to code JavaScript by playing a game
- The Birth and Death of JavaScript (future-history video)
- Introducing the WebKit FTL JIT
- Google and JavaScript
- The Origin of Javascript with Brendan Eich (Podcast)
- Isomorphic JavaScript
- Eloquent Jvascript (free online book)
- The path to parallel JavaScript
- Javascript For Heterosexuals... Now with code examples. (Some background, and an official statement.)
- The Origin of Javascript with Brendan Eich (podcast)