JavaScript

  • Revision slug: Web/JavaScript
  • Revision title: JavaScript
  • Revision id: 431831
  • Created:
  • Creator: ChaitanyaGSNR
  • Is current revision? No
  • Comment

Revision Content

A re-introduction to JavaScript
An overview for those who think they know about JavaScript

JavaScript® (often shortened to JS) is a lightweight, interpreted, object-oriented language with first-class functions, most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm, scripting language that is dynamic, is type safe, and supports object-oriented, imperative, and functional programming styles.

The JavaScript standard is ECMAScript. As of 2012, all modern browsers fully support ECMAScript 5.1. Older browsers support at least ECMAScript 3. A 6th major revision of the standard is in the works. The current progress of different new and improved features can be followed on the dedicated wiki.

This section of the site is dedicated to the JavaScript language itself, the parts that are not specific to Web pages, or other host environments. For information about APIs specific to Web pages, please see DOM. Read more about how DOM and JavaScript fit together in the DOM Reference.

Documentation

JavaScript Reference
This JavaScript reference includes complete documentation for JavaScript 1.5 and updates.
JavaScript Guide
Our primary guide about how to program with JavaScript, for programmers who are new to JavaScript.

Introductory articles

JavaScript technologies overview
Introduction to the web browser JavaScript landscape
JavaScript data structures
Overview of available data structures in JavaScript
Inheritance and the prototype chain
Explanation of the widely misunderstood and under-estimated prototype-based inheritance
Canvas tutorial
<canvas> is the HTML5 element which can be used to draw graphics using scripting. It can, for instance be used to draw graphs, make photo compositions or do simple (and not so simple) animations.
JavaScript Language Resources
A description of the JavaScript language standards.
Internet Explorer Standards Support Documents
Microsoft publishes documents that describe "variations, clarifications, and extensions to certain final approved web standards supported by Internet Explorer." Of these, the ones that are related to JavaScript are:

View All...

Tools & advanced resources

View All...

Other resources

JavaScript Garden
A site with helpful information about the more esoteric parts of JavaScript.
JSWiki
A Github-based wiki that indexes libraries and resources.
Stack Overflow
A collaboratively built and maintained Q&A site and look if you can find the answer to your question. If not you will be able to ask your question there.
Pineapple · JavaScript
A large database of current JavaScript tutorials and resources.

JavaScript is a trademark or registered trademark of Oracle in the U.S. and other countries.

Revision Source

<div class="callout-box">
  <strong><a href="/en-US/docs/Web/JavaScript/A_re-introduction_to_JavaScript">A re-introduction to JavaScript</a></strong><br />
  An overview for those who <em>think</em> they know about JavaScript</div>
<p><strong>JavaScript</strong><sup>®</sup> (often shortened to <strong>JS</strong>) is a lightweight, interpreted, object-oriented language with <a href="https://en.wikipedia.org/wiki/First-class_functions" title="https://en.wikipedia.org/wiki/First-class_functions">first-class functions</a>, most known as the scripting language for Web pages, but <a class="external" href="http://en.wikipedia.org/wiki/JavaScript#Uses_outside_web_pages">used in many non-browser environments</a> as well such as <a class="external" href="http://nodejs.org/">node.js</a> or <a href="http://couchdb.apache.org">Apache CouchDB</a>. It is a <a class="mw-redirect" href="https://en.wikipedia.org/wiki/Prototype-based" title="Prototype-based">prototype-based</a>, <a href="/en-US/docs/Multi-Paradigm_Programming_Language" title="/en-US/docs/multiparadigmlanguage.html">multi-paradigm</a>, scripting language that is <span class="mw-redirect">dynamic</span>, is <a href="https://en.wikipedia.org/wiki/Type_safety" title="Type safety">type safe</a>, and supports object-oriented<sup>,</sup> imperative, and functional programming styles.</p>
<p>The JavaScript standard is <a href="/en-US/docs/JavaScript/Language_Resources">ECMAScript</a>. As of 2012, all modern browsers fully support ECMAScript 5.1. Older browsers support at least ECMAScript 3. A 6th major revision of the standard is in the works. The current progress of different new and improved features can be followed on the <a class="external" href="http://wiki.ecmascript.org/doku.php?id=harmony:proposals">dedicated wiki</a>.</p>
<p>This section of the site is dedicated to the JavaScript language itself, the parts that are not specific to Web pages, or other host environments. For information about APIs specific to Web pages, please see <a href="/en-US/docs/DOM">DOM</a>. Read more about how DOM and JavaScript fit together in the <a href="/en-US/docs/Gecko_DOM_Reference/Introduction#DOM_and_JavaScript">DOM Reference</a>.</p>
<table class="topicpage-table">
  <tbody>
    <tr>
      <td>
        <h2 class="Documentation" id="Documentation">Documentation</h2>
        <dl>
          <dt>
            <a href="/en-US/docs/Web/JavaScript/Reference">JavaScript Reference</a></dt>
          <dd>
            This JavaScript reference includes complete documentation for JavaScript 1.5 and updates.</dd>
          <dt>
            <a href="/en-US/docs/Web/JavaScript/Guide">JavaScript Guide</a></dt>
          <dd>
            Our primary guide about how to program with JavaScript, for programmers who are new to JavaScript.</dd>
        </dl>
        <h3 id="Introductory_articles">Introductory articles</h3>
        <dl>
          <dt>
            <a href="/en-US/docs/JavaScript_technologies_overview">JavaScript technologies overview</a></dt>
          <dd>
            Introduction to the web browser JavaScript landscape</dd>
          <dt>
            <a href="/en-US/docs/Web/JavaScript/Data_structures">JavaScript data structures</a></dt>
          <dd>
            Overview of available data structures in JavaScript</dd>
          <dt>
            <a href="/en-US/docs/Web/JavaScript/Guide/Inheritance_and_the_prototype_chain">Inheritance and the prototype chain</a></dt>
          <dd>
            Explanation of the widely misunderstood and under-estimated prototype-based inheritance</dd>
        </dl>
        <h3 id="Other_articles">Other articles</h3>
        <dl>
          <dt>
            <a href="/en-US/docs/Canvas_tutorial">Canvas tutorial</a></dt>
          <dd>
            &lt;canvas&gt; is the HTML5 element which can be used to draw graphics using scripting. It can, for instance be used to draw graphs, make photo compositions or do simple (and not so simple) animations.</dd>
          <dt>
            <a href="/en-US/docs/Web/JavaScript/Language_Resources">JavaScript Language Resources</a></dt>
          <dd>
            A description of the JavaScript language standards.</dd>
          <dt>
            <a class="external" href="http://msdn.microsoft.com/en-us/library/ff405926.aspx">Internet Explorer Standards Support Documents</a></dt>
          <dd>
            Microsoft publishes documents that describe "variations, clarifications, and extensions to certain final approved web standards supported by Internet Explorer." Of these, the ones that are related to JavaScript are:
            <ul>
              <li><a class="external" href="http://msdn.microsoft.com/en-us/library/ff520996.aspx">[MS-ES3]: Internet Explorer ECMA-262 ECMAScript Language Specification Standards Support Document </a></li>
              <li><a class="external" href="http://msdn.microsoft.com/en-us/library/ff521046.aspx">[MS-ES3EX]: Microsoft JScript Extensions to the ECMAScript Language Specification Third Edition </a></li>
              <li><a class="external" href="http://msdn.microsoft.com/en-us/library/ff960769.aspx">[MS-ES5]: Internet Explorer ECMA-262 ECMAScript Language Specification (Fifth Edition) Standards Support Document </a></li>
              <li><a class="external" href="http://msdn.microsoft.com/en-us/library/ff955363.aspx">[MS-ES5EX]: Internet Explorer Extensions to the ECMA-262 ECMAScript Language Specification (Fifth Edition)</a></li>
            </ul>
          </dd>
        </dl>
        <p><span class="alllinks"><a href="/en-US/docs/tag/JavaScript">View All...</a></span></p>
      </td>
      <td>
        <h2 class="Tools" id="Tools_.26_advanced_resources">Tools &amp; advanced resources</h2>
        <ul>
          <li><a href="http://www.learnstreet.com/">LearnStreet</a> - Free online JavaScript tutorials and practice exercises.</li>
          <li><a href="http://www.codecademy.com/">Codecademy</a> - Free JavaScript course with interactive problems</li>
          <li><a href="http://codeschool.com">Code School </a>- Learn by Doing, Multiple JS courses</li>
          <li><a class="link-https" href="https://github.com/rwldrn/idiomatic.js">Idiomatic.js</a> - Principles of Writing Consistent, Idiomatic JavaScript</li>
          <li><a href="/en-US/docs/JavaScript/Memory_Management">Memory Management in JavaScript</a> . Overview of how memory management works in JavaScript</li>
          <li><a class="external" href="http://www.getfirebug.com/">Firebug</a> - JavaScript debugging and profiling</li>
          <li><a href="/en-US/docs/Venkman">Venkman</a> - JavaScript debugger</li>
          <li><a href="/en-US/docs/JavaScript/Shells">JavaScript Shells</a> - test snippets of code</li>
          <li><a class="external" href="http://www.jslint.com/lint.html">JSLint</a> - syntax checker, warns against bad practices</li>
          <li><a class="external" href="http://jshint.com">JSHint</a> - community-made syntax checker</li>
          <li><a class="external" href="http://code.google.com/p/jsdoc-toolkit/">JSDoc</a> - generate documentation from code</li>
          <li><a class="external" href="http://www.aptana.com">Aptana Studio</a> - Open source IDE with Ajax and JavaScript support (based on eclipse)</li>
          <li><a class="external" href="http://netbeans.org/features/javascript/">Netbeans</a> - Open source IDE which includes sophisticated JavaScript support</li>
          <li><a class="external" href="http://www.eclipse.org/downloads/packages/eclipse-ide-javascript-web-developers/heliossr1">Eclipse</a> - Open source IDE which includes JavaScript Development Toolkit</li>
          <li><a class="external" href="http://www.c9.io">Cloud9 IDE</a> - Open source IDE that runs in the browser with JavaScript and Node.js support</li>
          <li><a class="external" href="http://prettydiff.com/">Pretty Diff </a>- a diff tool for comparing minified code to regular code</li>
          <li><a class="link-https" href="https://addons.mozilla.org/en-US/firefox/addon/7434">Extension Developer's Extension</a> - Offers JS Environment and Shell</li>
          <li><a href="http://boilerplatejs.org/">BoilerplateJS</a> - Reference architecture for large scale JavaScript projects</li>
          <li><a href="/en-US/docs/JavaScript/Other_JavaScript_tools">Other JavaScript tools</a></li>
        </ul>
        <p><span class="alllinks"><a href="/en-US/docs/tag/JavaScript:Tools">View All...</a></span></p>
        <h2 class="Community" id="Other resources" name="Other resources">Other resources</h2>
        <dl>
          <dt>
            <a class="external" href="http://bonsaiden.github.com/JavaScript-Garden">JavaScript Garden</a></dt>
          <dd>
            A site with helpful information about the more esoteric parts of JavaScript.</dd>
          <dt>
            <a class="link-https" href="https://github.com/bebraw/jswiki/wiki">JSWiki</a></dt>
          <dd>
            A Github-based wiki that indexes libraries and resources.</dd>
          <dt>
            <a href="http://stackoverflow.com/questions/tagged/javascript">Stack Overflow</a></dt>
          <dd>
            A collaboratively built and maintained Q&amp;A site and look if you can find the answer to your question. If not you will be able to ask your question there.</dd>
          <dt>
            <a href="http://pineapple.io/resources/tagged/javascript?type=tutorials&amp;sort=all_time">Pineapple · JavaScript</a></dt>
          <dd>
            A large database of current JavaScript tutorials and resources.</dd>
        </dl>
        <h2 class="Related_Topics" id="Related_Topics" name="Related_Topics">Related topics</h2>
        <ul>
          <li><a href="/en-US/docs/AJAX">AJAX</a>, <a href="/en-US/docs/DOM">DOM</a>, <a class="internal" href="/en-US/docs/JavaScript/Server-Side_JavaScript">Server-Side JavaScript</a>, <a href="/en-US/docs/DHTML">DHTML</a>, <a href="/en-US/docs/SpiderMonkey">SpiderMonkey</a>, <a href="/en-US/docs/HTML/Canvas">Canvas</a>, <a href="/en-US/docs/JavaScript/JQuery">JQuery</a></li>
        </ul>
      </td>
    </tr>
  </tbody>
</table>
<p>JavaScript is a trademark or registered trademark of Oracle in the U.S. and other countries.</p>
Revert to this revision