我很好奇它是如何运作这个结构的。当我从 Javascript 访问 navigator.mimetypes 时,我正在访问一个对象。
>>> typeof(navigator.mimeTypes)
"object"
该对象有对象列表。
navigator.mimeTypes[Object_0, Object_1, Object_2, ...]
>>> typeof(navigator.mimeTypes[0])
"object"
例如,我可以检索第一个对象:
navigator.mimeTypes[0]
MimeType { constructor=MimeType, enabledPlugin=Plugin, type="application/x-vnd.google.update3webcontrol.3"}
任何人都可以向我解释为什么这是有效的吗?
>>> navigator.mimeTypes["application/x-shockwave-flash"]
MimeType { constructor=MimeType, type="application/x-shockwave-flash", description="",more...}
我的意思是为什么我可以通过 ["application/x-shockwave-flash"] 找到指定的对象??
javascript 对我来说将是一个新世界:)
最佳答案
navigator.mimeTypes
返回一个名为 MimeTypeArray
的对象,它不是传统的 JavaScript 数组,而是一个具有类似数组属性的对象,您可以通过索引或名称访问它的属性.
编辑:当您使用 navigator.mimeTypes['someType']
时,您将 MimeTypeArray
视为具有 someType
映射到数组中的 MimeType
对象,该对象还具有与键值相同的 type
属性。这是 DOM(技术上不是 JavaScript)中的一个奇怪对象,您通常不会看到很多这样的对象。
关于javascript - navigator.mimeTypes 结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13934287/