Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 诸如‘new Image()’和‘new Option()’之类的构造函数记录在哪里?_Javascript_Dom - Fatal编程技术网

Javascript 诸如‘new Image()’和‘new Option()’之类的构造函数记录在哪里?

Javascript 诸如‘new Image()’和‘new Option()’之类的构造函数记录在哪里?,javascript,dom,Javascript,Dom,不是在Mozilla,而是: 对于图像: 感谢您的识别 它提供了DOM接口构造函数的详细信息 对于选项: 还提供了DOM接口构造函数的详细信息。 (发现时使用: ) 鉴于这些参考文献,下面将询问mozilla.org,是否记录了相同的参考文献 具体来说,在mozilla.org中,像newimage()和newoption()这样的构造函数是在当代上下文中记录的吗 古老的 Image()定义于 Option()定义于 描述这些构造函数的存在,这些构造函数将它们作为固有的JavaSc

不是在Mozilla,而是:

  • 对于
    图像

    感谢您的识别

    它提供了DOM接口构造函数的详细信息
  • 对于
    选项


    还提供了DOM接口构造函数的详细信息。
    (发现时使用:
    )
鉴于这些参考文献,下面将询问
mozilla.org
,是否记录了相同的参考文献


具体来说,在
mozilla.org
中,像
newimage()
newoption()
这样的构造函数是在当代上下文中记录的吗

古老的

  • Image()
    定义于
  • Option()
    定义于
描述这些构造函数的存在,这些构造函数将它们作为固有的JavaScript语言组件,这是不正确的

javascript: alert([new Image(), '\n\n', new  Option()])
通过显示

[对象HTMLImageElement]

,[object HTMLOptionElement]

从修辞上讲,那么:

javascript:alert([new Anchor(), new Preserve(), new Form(),,, ])
还有哪些原始元素DOM构造函数?或者,没有了

合并
new Image()
new Option()
等编程定义来解释它们的缺失,这是否令人厌恶,也与Mozilla使用的DOM范式不一致?然而,这些构造函数显然不是JavaScript语言规范的固有特性,当然也不是HTML。那么,当前的正确范例(源自
mozilla.org
)到底在哪里全面描述了它们,包括参数类型和顺序

参考资料:


旁白:(请不要被这件事分散注意力-找到文章标题中指定的相关文件是唯一的考虑因素)

这促使进行了以下检查。这只是一个观察

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

[对象选项]

[对象图像]

[对象JSON]

[对象数学]

函数错误(){ [本机代码]}

函数数组(){ [本机代码]}

布尔函数(){ [本机代码]}

功能日期(){ [本机代码]}

函数函数(){ [本机代码]}

函数号(){ [本机代码]}

函数对象(){ [本机代码]}

函数RegExp(){ [本机代码]}

函数字符串(){ [本机代码]}

({})

但是


图像是否是构造函数?这个问题的答案(大概)可以在回答这个帖子标题中问题的文件中找到。这应该强调在适当的文档中编目
图像
选项
等的不一致性、异常和不规则性。

实际上,我从未使用过构造函数参数。我只是创建对象,然后填充成员

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(", "));

因为(在谷歌上)查找特定成员名称的信息要比查找功能描述的信息容易得多。

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

古代文献, [...] 描述这些构造函数的存在性,这些构造函数将它们关联为 固有的JavaScript语言组件,这是不正确的

javascript: alert([new Image(), '\n\n', new  Option()])
你是怎么得出这个结论的?JavaScript™ 属于Mozilla,因此他们可以指定它包含他们想要的任何内容。JavaScript™ 从一开始就有了一个映像和选项构造函数,其他实现已经复制了它们,因此存在的每个浏览器都有它们。这些特性在创建W3CDOM接口之前就已经存在,并且在普遍存在的情况下,被标记为“DOM 0”,这实际上意味着在DOM 1出现时,Netscape Navigator和Internet Explorer支持这些特性

DOM 0在任何地方都没有正式文档记录。HTML5试图为浏览器中实现的HTML和javascript编写规范,因此它包括图像和选项构造函数,还包括DOM 0特性,但它们没有这样的标签或分类

[……]

然而,这些构造函数显然不是语言固有的 JavaScript规范


没有针对JavaScript发布的规范™, 只有位于(MDN)的JavaScript文档。还要注意,MDN上的文档是一个公共wiki,任何人都可以创建和编辑,包括您。:-)

您错误地认为Mozilla的文档是某种完整的JavaScript规范™—事实并非如此。不远。它实际上只是由感兴趣的人添加的文档,主要是通过浏览浏览器,了解它的功能。还有一个问题,但你可能也会发现这方面的不足

[……]

HTMLImageElement Mozilla文档

Gecko DOM参考的链接记录了W3C HTMLImageElementInterface的JavaScript实现,该接口没有图像构造函数

Mozilla上使用Image()构造函数的当代先例

这表明它存在,但没有方便的地方记录它。最好将其记录在文档中。如果你想添加它,获得一个MDN帐户(免费,非常简单)并添加它

编辑 现在MDN上有一篇文章链接到相关标准

2015年5月25日编辑
选项构造函数是。

FWIW Microsoft在MSDN上有这两个构造函数的文档: