构造函数在哪里,例如`new Image()`和`new Option()`是否logging在案?

不是在Mozilla,而是:

  • 对于image
    感谢Rickard的鉴定
    http://www.w3.org/html/wg/drafts/html/CR/embedded-content-0.html#dom-image
    它提供了DOM接口的构造函数细节。
  • 可供option
    http://www.w3.org/html/wg/drafts/html/CR/forms.html#dom-option
    也给出了DOM接口的构造函数的细节。
    (使用:
    http://www.google.com/search?client=ubuntu&channel=fs&q=constructor+site%3Adev.w3.org%2Fhtml5&ie=utf-8&oe=utf-8 )

鉴于这些参考文献, mozilla.org是否如下文所述是相同的。


具体来说,在mozilla.org是像在当代背景下logging的new Image()new Option()构造函数?

古代文献 ,

  • Image()在http://devedge-temp.mozilla.org/library/manuals/2000/javascript/1.3/reference/image.html中定义
  • Option()定义在http://devedge-temp.mozilla.org/library/manuals/2000/javascript/1.3/reference/option.html

描述了这些构造函数的存在,暗示它们是内在的JavaScript语言组件,这是不正确的。

 javascript: alert([new Image(), '\n\n', new Option()]) 

通过展示清楚地表明他们的显性存在

[object HTMLImageElement],

,[object HTMLOptionElement]

修辞,怎么样:

 javascript:alert([new Anchor(), new Preserve(), new Form(),,, ]) 

还有什么其他的原始元素DOM构造函数? 或者,没有更多?

对Mozilla使用的DOM范式是否是讽刺的,是否与new Image()new Option()等的编程定义合并,解释了它们的缺失? 然而,这些构造函数显然不是JavaScript的语言规范的内在,当然也不是HTML。 那么,究竟在哪里有一个正确的当前范式(来源于mozilla.org )来描述它们,包括参数types和顺序?

引用:

  • HTMLImageElement Mozilla文档
  • 当前在Mozilla中使用Image()构造函数的先例
  • 堆栈溢出相关的问题

撇开:(请不要分心 – 找出文章标题中指定的相关文件是唯一的考虑因素)

这个答案提示了下面的检查。 这只是一个观察。

 javascript: alert([ Option, Image, JSON, Math, Error, Array, Boolean, Date, Function, Number, Object, RegExp, String ].join("\n\n")); alert( Image.toSource() ); 

在FireFox中生成:

[对象选项]

[object Image]

[对象JSON]

[对象math]

函数Error(){[native code]}

函数Array(){[native code]}

函数Boolean(){[native code]}

函数Date(){[native code]}

函数Function(){[native code]}

函数Number(){[native code]}

函数Object(){[native code]}

函数RegExp(){[native code]}

函数String(){[native code]}

({})

 Error: ({}) is not a constructor Source File: javascript:alert(new ({})); Line: 1 

图像是一个构造函数吗? 这个答案(大概)可以在回答这个post标题中提到的问题的文件中find。 这应该强调在适当的文件中编目ImageOption等的不一致,exception和不规范之处。

JavaScript™(用于Mozilla的DOM操作的ECMAScript的实现,又名Gecko)与用于描述其他浏览器(例如IE中的JScript)的类似脚本环境的通用术语“javascript”之间存在区别。

古代的文档,描述了这些构造函数的存在,暗示它们是内在的JavaScript语言组件,这是不正确的。

你如何得出这个结论? JavaScript™属于Mozilla,所以他们可以指定它包含任何他们想要的。 JavaScript™从一开始就有一个Image和Option的构造函数,其他的实现已经拷贝了它们,这样每个浏览器都有它们。 这些特性在创buildW3C DOM接口之前就已经存在,并且在无处不在的地方被标记为“DOM 0”,这实际上意味着在DOM 1的时候Netscape Navigator和Internet Explorer支持。

DOM 0没有正式logging在任何地方。 HTML5是为HTML和JavaScript编写规范的尝试,因为它在浏览器中实现,因此它包含Image和Option构造函数,因此包含DOM 0function,但未标记或分类。

[…]

但是,这些构造函数显然不是JavaScript的语言规范的内在

没有发布的JavaScript™规范, Mozilla开发者networking (MDN)上只有JavaScript文档。 另外请注意,MDN上的文档是任何人都可以创build和编辑的公开维基,包括您。 🙂

你错误地认为Mozilla的文档是JavaScript™的一个完整的规范,但事实并非如此。 没有太长的路要走。 这实际上只是感兴趣的人添加的文档,主要是通过浏览器浏览并查看它的function。 还有一个JavaScript参考 ,但你也可能会发现缺乏。

[…]

HTMLImageElement Mozilla文档

链接到Gecko DOM参考文档的W3C HTMLImageElementInterface的JavaScript实现没有Image构造函数。

当前在Mozilla中使用Image()构造函数的先例

这表明它存在,但没有方便的地方来logging它。 这可能是最好的文档在JavaScript参考 。 如果你想添加它,获得一个MDN帐户(免费,很容易),并添加它。

编辑

MDN现在有一篇Image文章,链接到相关标准。

编辑2015年5月25日

Option构造函数在HTML5中logging

FWIW Microsoft在MSDN上为这两个构造函数提供了文档:

  • Image
  • Option

HTML 5

DOM选项类

http://dev.w3.org/html5/spec-preview/the-option-element.html

提供了几个构造函数用于创buildHTMLOptionElement对象(除了DOM Core的工厂方法,例如createElement()):Option(),Option(text),Option(text,value),Option(text,value,defaultSelected)和选项(文本,值,默认选中,选中)。

其实,我从来没有使用构造函数的参数。 我只是创build对象,然后填充成员。

 var img=new Image(); img.src="path/to/image.jpg"; 

当我在JavaScript中“认识”一个新的类时,我使用JSON.stringify和使用如下一段代码来探索它:

 var obj_to_explore=new Image(); var dbg=[] for(var i in obj_to_explore){ dbg.push(i+": "+obj_to_explore[i]); } //alert("explored object: " + dbg.join(", ")) console.log("explored object: " + dbg.join(", ")); 

因为在特定成员名称(而不是特征描述)上查找(在谷歌上)信息要容易得多。