回答編集履歴

1

DOM4に則れば、Firefoxの挙動のほうが正しい

2017/09/28 00:45

投稿

maisumakun
maisumakun

スコア145183

test CHANGED
@@ -1,4 +1,8 @@
1
- どういうわけか、`HTMLCollection`に`name`で割り付けられたプロパティが、Chromeでは`enumerable: true`となっているのに対して、Firefoxでは`enumerable: false`となっているので、`for-in`でピックアップされるかどうかが違ってきます([DOM2](https://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html#ID-75708506)では、そもそも`.item()`と`.namedItem()`しか規定していないので、どちらが正しいとは言えません)
1
+ どういうわけか、`HTMLCollection`に`name`で割り付けられたプロパティが、Chromeでは`enumerable: true`となっているのに対して、Firefoxでは`enumerable: false`となっているので、`for-in`でピックアップされるかどうかが違ってきます。
2
+
3
+
4
+
5
+ [DOM4](https://www.w3.org/TR/domcore/#interface-htmlcollection)では、「The supported property names, all unenumerable」となっているので、仕様上はFirefoxの挙動のほうが正しいです。
2
6
 
3
7
 
4
8