* 仕様書

[REFS[
- [2] [CITE[Web IDL (Second Edition)]]
( ([TIME[2014-02-10 21:45:38 +09:00]] 版))
<http://heycam.github.io/webidl/#dfn-supported-property-names>
]REFS]

* 性質

[9] [[supported property names]] により作られる[[特性]]は、
[[列挙可能]]が基本ですが、[[列挙不能]]なこともあります。

* supported property names が定義されているインターフェイス

[FIG(table)[
:x:[[インターフェイス]]
:getter:[[named getter]]
:enumerable:[[列挙可能]]
:arraylike:[[配列風インターフェイス]]
:legacycaller:[CODE(IDL)@en[[[legacycaller]]]]

:x:[[JavaScript]] [CODE(JS)@en[[[Object]]]]
:getter:(○)
:enumerable:○

:x:[CODE(DOMi)@en[[[DOMStringMap]]]] [SRC[[[HTML Standard]]]]

:x:[CODE(DOMi)@en[[[HTMLCollection]]]] [SRC[[[DOM Standard]]]]
:enumerable:×
:arraylike:○

:x:[CODE(DOMi)@en[[[HTMLAllCollection]]]] [SRC[[[HTML Standard]]]]
:enumerable:×
:arraylike:○
:legacycaller:○

:x:[CODE(DOMi)@en[[[HTMLFormControlsCollection]]]] [SRC[[[HTML Standard]]]]
:enumerable:×
:arraylike:○

:x:[CODE(DOMi)@en[[[HTMLOptionsCollection]]]] [SRC[[[HTML Standard]]]]
:enumerable:×
:arraylike:○

:x:[CODE(DOMi)@en[[[Document]]]] [SRC[[[HTML Standard]]]]

:x:[CODE(DOMi)@en[[[HTMLFormElement]]]] [SRC[[[HTML Standard]]]]
:enumerable:×
:arraylike:○

:x:[CODE(DOMi)@en[[[Window]]]] [SRC[[[HTML Standard]]]]
:arraylike:○
:enumerable:×

:x:[CODE(DOMi)@en[[[PluginArray]]]] [SRC[[[HTML Standard]]]]
:getter:[CODE(DOMm)@en[[[namedItem]]]]
:enumerable:×
:arraylike:○

:x:[CODE(DOMi)@en[[[Plugin]]]] [SRC[[[HTML Standard]]]]
:getter:[CODE(DOMm)@en[[[namedItem]]]]
:enumerable:×
:arraylike:○

:x:[CODE(DOMi)@en[[[MimeTypeArray]]]] [SRC[[[HTML Standard]]]]
:getter:[CODE(DOMm)@en[[[namedItem]]]]
:enumerable:×
:arraylike:○

:x:[CODE(DOMi)@en[[[Storage]]]] [SRC[[[HTML Standard]]]]
:getter:[CODE(DOMm)@en[[[getItem]]]]

:x:[CODE(DOMi)@en[[[CSSStyleDeclaration]]]]
:arraylike:○

:x:[CODE(DOMi)@en[[[HTMLPropertiesCollection]]]] [SRC[[[HTML Standard]]]] ([[廃止]])
:enumerable:×
:arraylike:○

:x:[CODE(DOMi)@en[[[DOMElementMap]]]] [SRC[[[HTML Standard]]]] ([[廃止]])

]FIG]

* 歴史

[1] [CITE@en[Web Applications 1.0 r8010     Make the empty string no longer be a possible index for most objects that can be indexed by name.]]
( ([TIME[2013-07-03 06:45:00 +09:00]] 版))
<http://html5.org/tools/web-apps-tracker?from=8009&to=8010>

[3] [CITE@en[Re: Violations of internal method invariants?]]
( ([[Boris Zbarsky]] 著, [TIME[2014-07-31 15:23:00 +09:00]] 版))
<http://lists.w3.org/Archives/Public/public-script-coord/2014JulSep/0140.html>

[4] [CITE@en[Merge pull request #45 from bzbarsky/introduce-set-trap · 8d06953 · heycam/webidl]]
([TIME[2015-03-13 11:55:00 +09:00]] 版)
<https://github.com/heycam/webidl/commit/8d069531d2bf4e794b53bc496a4499af9d124bc9>

[5] [CITE@en[Re: Defining a ''''''[''''''''''''[''''''Set'''''']'''''''''''']'''''' internal method for platform objects]]
([[Boris Zbarsky]] 著, [TIME[2015-03-13 00:45:44 +09:00]] 版)
<https://lists.w3.org/Archives/Public/public-script-coord/2015JanMar/0196.html>

[6] [CITE@en[Web Applications 1.0 r6136 Add some warnings in areas where the spec might change based on implementation changes.]]
( ([TIME[2011-05-13 14:53:00 +09:00]] 版))
<http://html5.org/tools/web-apps-tracker?from=6135&to=6136>

[7] [CITE@en[Bug 6036 – HTMLCollection.namedItem() should look for non-HTML elements]]
( ([TIME[2013-01-05 12:28:17 +09:00]] 版))
<https://www.w3.org/Bugs/Public/show_bug.cgi?id=6036>

[8] [CITE[Define HTMLCollection's named properties better. Also widen the element-... · 1400a64 · whatwg/dom]]
( ([TIME[2013-01-05 12:30:05 +09:00]] 版))
<https://github.com/whatwg/dom/commit/1400a64aff1f2155f9cfa935624b4bfbc4f7c66b>

[10] [CITE@en[Fix #141: NamedNodeMap's supported property names should not contain … · whatwg/dom@5dbefd1]]
([TIME[2016-01-07 11:55:17 +09:00]] 版)
<https://github.com/whatwg/dom/commit/5dbefd1035c5528e236a8b13dabcbd6c649e2d3e>

[11] [CITE@en[Formalize custom element reactions · whatwg/html@27aa7bc]]
([TIME[2016-04-26 19:01:11 +09:00]] 版)
<https://github.com/whatwg/html/commit/27aa7bc4fa6f168654a8c858f0773e611f679b39>

[12] [CITE@en[Clean up named and indexed property algorithm definitions]]
( ([[domenic]]著, [TIME[2016-05-20 08:53:49 +09:00]]))
<https://github.com/whatwg/html/commit/9b4394f9a03d6910b772f17252259d99f208ce73>

[13] [CITE@en[Make Window and Document named/indexed properties exclude shadow trees]]
([[domenic]]著, [TIME[2016-08-03 13:42:52 +09:00]])
<https://github.com/whatwg/html/commit/7b567729ac3cc66b074b0df53138c353ec540bb9>

[14] [CITE@en[22320 – Form's supported property names should perhaps not be enumerable]]
([TIME[2016-09-01 12:54:34 +09:00]])
<https://www.w3.org/Bugs/Public/show_bug.cgi?id=22320>

[15] [CITE@en[Change to named property visibility algorithm. (#174)]]
([[bzbarsky]]著, [TIME[2016-09-12 05:08:35 +09:00]])
<https://github.com/heycam/webidl/commit/9ea873f9be2c5c74967f4a8019f2c86bfb715236>

[16] [CITE@en[Make '''[''''''['''PreventExtensions''']'''''']''' fail for objects w/ named/indexed props. (#…]]
([[tobie]]著, [TIME[2016-10-23 06:50:13 +09:00]])
<https://github.com/heycam/webidl/commit/917525e5ffdeafe31f580786767b326554139499>

[17] [CITE@en[Add legacy platform objects. (#230)]]
([[tobie]]著, [TIME[2016-11-15 02:07:16 +09:00]])
<https://github.com/heycam/webidl/commit/379685767dce3f953e187a2a8f3cb492b9b56649>

[18] [CITE@en[Editorial: objects support named/index properties by extension (#273)]]
([[tobie]]著, [TIME[2017-01-23 23:49:18 +09:00]])
<https://github.com/heycam/webidl/commit/ca94c43fe04faa35cc6c5f3ad3dce45226df3055>

[19] [CITE@en[Remove <applet>]]
([[zcorpan]]著, [TIME[2017-08-21 22:19:30 +09:00]])
<https://github.com/whatwg/html/commit/b9b9d60f9451c05f8e8d542e4094f987ae1a5fb8>

[20] [CITE@en[<a> and <area> are not window named objects]]
([[ayg]]著, [TIME[2017-09-06 22:44:24 +09:00]])
<https://github.com/whatwg/html/commit/9c209523143cb97551799e185e2a5d2750854bda>

[21] [CITE@en[<a> and <area> are not window named objects by annevk · Pull Request #3013 · whatwg/html]]
([TIME[2017-09-09 17:05:36 +09:00]])
<https://github.com/whatwg/html/pull/3013>

[22] [CITE@en[Check ignoreNamedProps before the named property visibility algorithm.]]
([[Ms2ger]]著, [TIME[2019-01-18 00:36:46 +09:00]])
<https://github.com/heycam/webidl/commit/a9673c81278bb46643b4177ff82dc1d4aab64c93>

[23] [CITE@en[Check ignoreNamedProps before the named property visibility algorithm. by Ms2ger · Pull Request #625 · heycam/webidl]]
([TIME[2019-06-20 13:21:31 +09:00]])
<https://github.com/heycam/webidl/pull/625>

[24] [CITE@en[Editorial: Shorten the conditions in the '''[''''''['''Set''']'''''']''' algorithm]]
([[Ms2ger]]著, [TIME[2019-04-15 23:04:24 +09:00]])
<https://github.com/heycam/webidl/commit/059491b4de91fdc45d26d9f2c48a6a6a0c3eb3e6>

[25] [CITE@en[Editorial: Shorten the conditions in the '''[''''''['''Set''']'''''']''' algorithm by Ms2ger · Pull Request #713 · heycam/webidl]]
([TIME[2020-01-12 11:47:51 +09:00]])
<https://github.com/heycam/webidl/pull/713>

[26] [CITE@en[Remove a check for array index in '''[''''''['''Set''']'''''']''']]
([[Ms2ger]]著, [TIME[2019-04-04 23:55:28 +09:00]])
<https://github.com/heycam/webidl/commit/a395a59dcfa6cae77cb5c5647b25baeec09db5e5>

[27] [CITE@en[Remove a check for array index in '''[''''''['''Set''']'''''']''' by Ms2ger · Pull Request #706 · heycam/webidl]]
([TIME[2020-01-12 12:25:51 +09:00]])
<https://github.com/heycam/webidl/pull/706>

[28] [[CEA-2014-B]]