title: Where are constructors such as, `new Image()` and `new Option()`, documented?
body: <p>Not at Mozilla but:</p>
  
  <ul>
  <li>for <code>image</code>:<br>
  Thanks to <a href="https://stackoverflow.com/users/600633/rickard">Rickard</a> for identifying<br>
  <a href="http://www.w3.org/html/wg/drafts/html/CR/embedded-content-0.html#dom-image" rel="nofollow noreferrer">http://www.w3.org/html/wg/drafts/html/CR/embedded-content-0.html#dom-image</a><br>
  that provides the DOM interface constructor details.</li>
  <li>for <code>option</code>:<br>
  <a href="http://www.w3.org/html/wg/drafts/html/CR/forms.html#dom-option" rel="nofollow noreferrer">http://www.w3.org/html/wg/drafts/html/CR/forms.html#dom-option</a><br>
  also gives the DOM interface constructor details.<br>
  (Found using:<br>
  <a href="http://www.google.com/search?client=ubuntu&amp;channel=fs&amp;q=constructor+site%3Adev.w3.org%2Fhtml5&amp;ie=utf-8&amp;oe=utf-8" rel="nofollow noreferrer">http://www.google.com/search?client=ubuntu&amp;channel=fs&amp;q=constructor+site%3Adev.w3.org%2Fhtml5&amp;ie=utf-8&amp;oe=utf-8</a>)</li>
  </ul>
  
  <p>Given these references, it is moot whether <code>mozilla.org</code>, as asked below, documents the same.</p>
  
  <hr>
  
  <p>Specifically, where at <code>mozilla.org</code> are constructors like <code>new Image()</code> and <code>new Option()</code> documented in a contemporary context?</p>
  
  <p>Archaic <a href="http://devedge-temp.mozilla.org/library/manuals/2000/javascript/1.3/reference/" rel="nofollow noreferrer">documentation</a>,</p>
  
  <ul>
  <li><code>Image()</code> defined at <a href="http://devedge-temp.mozilla.org/library/manuals/2000/javascript/1.3/reference/image.html" rel="nofollow noreferrer">http://devedge-temp.mozilla.org/library/manuals/2000/javascript/1.3/reference/image.html</a></li>
  <li><code>Option()</code> defined at <a href="http://devedge-temp.mozilla.org/library/manuals/2000/javascript/1.3/reference/option.html" rel="nofollow noreferrer">http://devedge-temp.mozilla.org/library/manuals/2000/javascript/1.3/reference/option.html</a></li>
  </ul>
  
  <p>describes the existence of these constructors implicating them as intrinsic JavaScript language components, which is incorrect.</p>
  
  <pre><code>javascript: alert([new Image(), '\n\n', new  Option()])
  </code></pre>
  
  <p>clearly indicates their manifest existence by displaying</p>
  
  <blockquote>
    <p>[object HTMLImageElement],</p>
    
    <p>,[object HTMLOptionElement]</p>
  </blockquote>
  
  <p>Rhetorically, what about:</p>
  
  <pre><code>javascript:alert([new Anchor(), new Preserve(), new Form(),,, ])
  </code></pre>
  
  <p>What other primitive elemental DOM constructors are there? Or, are there no more?</p>
  
  <p>Is it anathema to, and inconsistent with the DOM paradigm used by Mozilla, to incorporate the programming definitions of <code>new Image()</code> and <code>new Option()</code> etc., explaining their absence? Yet, these constructors are clearly not intrinsic to the language specification of JavaScript and certainly not HTML. So, where exactly is there a correct current paradigm (originating from <code>mozilla.org</code>) that describes them fully, including argument types and orders?</p>
  
  <p>references:</p>
  
  <ul>
  <li><a href="https://developer.mozilla.org/en/DOM/HTMLImageElement" rel="nofollow noreferrer">HTMLImageElement Mozilla documentation</a></li>
  <li><a href="https://developer.mozilla.org/en/Canvas_tutorial/Using_images#Creating_an_image_from_scratch" rel="nofollow noreferrer">Contemporary precedent for <code>Image()</code> constructor use at Mozilla</a></li>
  <li><a href="https://stackoverflow.com/questions/5424571/where-is-the-documentation-for-all-of-the-javascript-html-element-constructors">Stack Overflow related question</a></li>
  </ul>
  
  <hr>
  
  <p>An aside: (please do not be distracted by this - locating the relevant documents as  specified in the article's title is the only consideration)</p>
  
  <p>This <a href="https://stackoverflow.com/questions/6936071/where-are-constructors-such-as-new-image-and-new-option-documented/6936147#6936147">answer</a> prompted the following examination. It is only an observation.</p>
  
  <pre><code>javascript:
      alert([  Option, Image,
                 JSON, Math, Error, 
                   Array, Boolean, Date, Function,
                     Number, Object, RegExp, String  ].join("\n\n"));
      alert( Image.toSource() );
  </code></pre>
  
  <p>produces in FireFox:</p>
  
  <blockquote>
    <p>[object Option]</p>
    
    <p>[object Image]</p>
    
    <p>[object JSON]</p>
    
    <p>[object Math]</p>
    
    <p>function Error() {
        [native code] }</p>
    
    <p>function Array() {
        [native code] }</p>
    
    <p>function Boolean() {
        [native code] }</p>
    
    <p>function Date() {
        [native code] }</p>
    
    <p>function Function() {
        [native code] }</p>
    
    <p>function Number() {
        [native code] }</p>
    
    <p>function Object() {
        [native code] }</p>
    
    <p>function RegExp() {
        [native code] }</p>
    
    <p>function String() {
        [native code] }</p>
  </blockquote>
  
  <p>and</p>
  
  <blockquote>
    <p>({})</p>
  </blockquote>
  
  <p>but</p>
  
  <pre><code>Error: ({}) is not a constructor
  Source File: javascript:alert(new ({}));
  Line: 1
  </code></pre>
  
  <p>Is Image a constructor or not? The answer to this would (presumably) be found in the documents that answer the question asked in this posting's title. This should emphasize the inconsistencies, anomalies and irregularities of cataloging <code>Image</code> and <code>Option</code> etc. in an appropriate document.</p>