凍結配列

凍結配列

[33] DOM API には JavaScript配列のように見えてそうでないものが沢山あります。

目次

  1. 仕様書
  2. 配列風インターフェイスの一覧
  3. sequence<>
  4. FrozenArray<>
  5. indexed getter
  6. 読取専用配列
  7. []
  8. T[]
  9. メモ

仕様書#

配列風インターフェイスの一覧#

[43]

インターフェイスindexed getterlengthiterablecontainsArrayClassnamed getterlegacycaller編集
JavaScript Array
JavaScript String
JavaScript 型付き配列型
JavaScript ArrayBuffer
JavaScript DataView
Web IDL sequence<>
Web IDL FrozenArray<>
Window
HTMLFormElement
HTMLSelectElementitem
NodeListitem
NamedNodeMapitem set remove
HTMLCollectionitem
HTMLAllCollectionitem
HTMLFormControlsCollectionitem
HTMLOptionsCollectionitem
VideoTrackList
AudioTrackList
TextTrackList
PluginArrayitem
Pluginitem
MimeTypeArrayitem
StyleSheetList
CSSRuleList
CSSStyleDeclaration
MediaList
TouchList
DataTransferItemList add remove clear
DOMTokenListitem add remove toggle replace
FileList
History
SourceBufferList
DOMStringListitem
DOMImplementationList (廃止)
NameList (廃止)
CanvasPixelArray (廃止)
HTMLPropertiesCollection (廃止)item
ClientRectListDOMRectList廃止item
Web IDL T[] (廃止)
Elements (廃止)

sequence<T>#

[36] sequence<T> は、次の場所で使われています。

FrozenArray<T>#

[6] 次の場所で使われています。

indexed getter#

[28] 次の各項も参照。

読取専用配列#

[24] XXX

[ArrayClass]#

[2] LegacyArrayClass 拡張属性 (旧 ArrayClass 拡張属性) は、 JavaScriptArray継承したオブジェクトとなることを表しています。

T[] #

[31]

メモ#

[5] Bug 20020 – Support subclassing Array ( ( 版)) <https://www.w3.org/Bugs/Public/show_bug.cgi?id=20020>

[7] Issue 229398 - chromium - Add support for [ArrayClass] and use that on NodeList - An open-source project to help move the web forward. - Google Project Hosting ( ( 版)) <http://code.google.com/p/chromium/issues/detail?id=229398>

[8] [whatwg] NodeList.forEach/map/filter still doesn't work ( ( 版)) <http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2014-January/041837.html>

[9] Bug 23682 – Fix the current [ArrayClass], [] and sequence<T> mess ( ( 版)) <https://www.w3.org/Bugs/Public/show_bug.cgi?id=23682>

[10] We replaced ArrayClass with iterable<> a while back but I forgot about t... · 81ff98b · whatwg/dom ( ( 版)) <https://github.com/whatwg/dom/commit/81ff98b85b1cb54d394d9ca70a8c131cc86f928d>

[11] Re: WebIDL Plans (Yves Lafon 著, 版) <https://lists.w3.org/Archives/Public/public-webapps/2015AprJun/0093.html>

[12] Re: WebIDL Plans (Boris Zbarsky 著, 版) <https://lists.w3.org/Archives/Public/public-webapps/2015AprJun/0097.html>

[13] Bug 23682 – Fix the current [ArrayClass], [] and sequence<T> mess ( 版) <https://www.w3.org/Bugs/Public/show_bug.cgi?id=23682>

[14] Array-with-item in WebIDL (Jonas Sicking 著, 版) <https://lists.w3.org/Archives/Public/public-script-coord/2015AprJun/0060.html>

[3] IRC logs: freenode / #whatwg / 20150715 ( 版) <http://krijnhoetmer.nl/irc-logs/whatwg/20150715>

[4] [WebIDL] T[] migration (Travis Leithead 著, 版) <https://lists.w3.org/Archives/Public/public-webapps/2015JulSep/0165.html>

[15] Use sequence<T> instead of T[] for arguments · whatwg/html@981a563 ( 版) <https://github.com/whatwg/html/commit/981a563a1d72fe42b71f2d22a2abb476151d7a4a>

[16] Remove T[] array types. · heycam/webidl@079cbb8 ( 版) <https://github.com/heycam/webidl/commit/079cbb861a99e9e857a3f2a169c0beeb49cd020a>

[17] Rename [ArrayClass] to [LegacyArrayClass]. · heycam/webidl@8531378 ( 版) <https://github.com/heycam/webidl/commit/853137810af373668b8fd2e9418eaade05778e9b>

[18] ArrayClass は現時点で CSSOM にだけ残っているものと思われます。 LegacyArrayClass を使っているものは見当たりません。

[19] Add FrozenArray<T> type. · heycam/webidl@775eace ( 版) <https://github.com/heycam/webidl/commit/775eace1758c99501cb52942c321c0c015a1b4bf>

[21] Add a default value [] that can be used for operation argument and dicti... · b0c3626 · heycam/webidl ( ( 版)) <https://github.com/heycam/webidl/commit/b0c3626a97de27578508aa7a3f52c1b30f26d2bf>

[20] Bug 25391 – Add default to a sequence e.g. sequence<DOMString> = []; ( ( 版)) <https://www.w3.org/Bugs/Public/show_bug.cgi?id=25391>

[23] [cssom] Switch from DOMString[] to FrozenArray<DOMString> · w3c/csswg-drafts@e8a91de ( 版) <https://github.com/w3c/csswg-drafts/commit/e8a91deb46b670d6c2d8d302492a64222928d08a>

[25] Re: [WebIDL] T[] migration (Simon Pieters 著, 版) <https://lists.w3.org/Archives/Public/public-webapps/2015OctDec/0234.html>

[26] [Fix #361] Use FrozenArray. · w3c/webcomponents@6d79c89 ( 版) <https://github.com/w3c/webcomponents/commit/6d79c8997caf2762751e20314c1c110110d8dc73>

[27] Merge pull request #89 from Ms2ger/array · heycam/webidl@c604809 ( 版) <https://github.com/heycam/webidl/commit/c604809378785f3de5b3cb2af33c0ec843dd5293>

[29] 12978 – Add a definition for "array index property name" ( 版) <https://www.w3.org/Bugs/Public/show_bug.cgi?id=12978>

[30] Define security around Window, WindowProxy, and Location properly · whatwg/html@acae3df ( 版) <https://github.com/whatwg/html/commit/acae3df652b382e9f4f1d1b4dc7e08e2b00df821>

[32] Use FrozenArray for location.ancestorOrigins · whatwg/html@2971950 ( 版) <https://github.com/whatwg/html/commit/2971950c4078d999aa9dbbc0aa0628f76d9d53f7>

[34] Use FrozenArray for Navigator#languages and MessageEvent#ports · whatwg/html@e4df68a ( 版) <https://github.com/whatwg/html/commit/e4df68a41b86753c7fcdd0d8ea4615f63ffc87e9>

[35] Formalize custom element reactions · whatwg/html@27aa7bc ( 版) <https://github.com/whatwg/html/commit/27aa7bc4fa6f168654a8c858f0773e611f679b39>

[37] Clean up named and indexed property algorithm definitions ( (domenic著, )) <https://github.com/whatwg/html/commit/9b4394f9a03d6910b772f17252259d99f208ce73>

[38] DOMString[] is not valid Web IDL · Issue #328 · w3c/presentation-api () <https://github.com/w3c/presentation-api/issues/328>

[39] Make DataTransfer's types attribute use a FrozenArray (domenic著, ) <https://github.com/whatwg/html/commit/466379ade56b8ba18584057085443844f4df5669>

[40] [cssom] Change IDL [ArrayClass] to [LegacyArrayClass] (zcorpan著, ) <https://github.com/w3c/csswg-drafts/commit/83d7e07f876ef79a95cf61209b075af22f868ca7>

[41] Correct some [CEReactions] usage (annevk著, ) <https://github.com/whatwg/html/commit/404f98bb543a244e5aeffe266d581f317e295598>

[42] Add legacy platform objects. (#230) (tobie著, ) <https://github.com/heycam/webidl/commit/379685767dce3f953e187a2a8f3cb492b9b56649>

[44] Simplify the distinguishable table (#183) (jyasskin著, ) <https://github.com/heycam/webidl/commit/89fc3a36b076da2563cd4c22ff9a4ef7c0c9a2f6>

[45] Editorial: objects support named/index properties by extension (#273) (tobie著, ) <https://github.com/heycam/webidl/commit/ca94c43fe04faa35cc6c5f3ad3dce45226df3055>

[46] Remove Web IDL conversions (domenic著, ) <https://github.com/whatwg/infra/commit/8e8d83d4035e82b82e007ec26c1feecb565fb871>

[47] Base sequences, dictionaries, and records on Infra types (#317) (domenic著, ) <https://github.com/heycam/webidl/commit/26aa8308811da812d28a5b3dd06fabcefecb71f0>

[48] Make the situation with [] default values a bit clearer. (#319) (bzbarsky著, ) <https://github.com/heycam/webidl/commit/53cbeef8258acd835d92c6ced3e822cb48c7029f>

[49] Remove the issue because Array-likes are still *incredibly* sad in th… (tabatkins著, ) <https://github.com/w3c/css-houdini-drafts/commit/53c0f815bc7661c4b301a1bc78c6517f723795c7>

[50] 20535 – consider removing indexed property setters, creators and deleters () <https://www.w3.org/Bugs/Public/show_bug.cgi?id=20535>

[51] [css-typed-om]: There's no nice way to represent CSSUnparsedValue as a "list-plus" style object. · Issue #239 · w3c/css-houdini-drafts () <https://github.com/w3c/css-houdini-drafts/issues/239>

[52] Fix [[GetOwnProperty]] and [[Delete]] for WindowProxy (annevk著, ) <https://github.com/whatwg/html/commit/e1c9c2a0153a4a825d021459609e9f3eefbd51f4>

[53] Optimistically switch CSSTransformValue to arraylike. (tabatkins著, ) <https://github.com/w3c/css-houdini-drafts/commit/f253ec586f6e66c911c788cf70e5f3d7cc8f7f26>

[54] Add frozen array types to the list of JSON types (tobie著, ) <https://github.com/heycam/webidl/commit/375b588732858cbf5fd815e9df4ed78727d62c6c>

[55] Add frozen array types to the list of JSON types by tobie · Pull Request #373 · heycam/webidl () <https://github.com/heycam/webidl/pull/373>

[56] Editorial: improve array index property name algorithm (#386) (tobie著, ) <https://github.com/heycam/webidl/commit/5c1fce0af40f9f0c9fa2914071b8d1109a6effdc>

[57] "array index property name" doesn't guard against failure · Issue #346 · heycam/webidl () <https://github.com/heycam/webidl/issues/346>

[58] Editorial: improve array index property name algorithm by tobie · Pull Request #386 · heycam/webidl () <https://github.com/heycam/webidl/pull/386>

[59] Correct extended attribute is LegacyArrayClass (tabatkins著, ) <https://github.com/w3c/fxtf-drafts/commit/420719b5d27cdc305286ee59a20095fb2094d6fe>

[60] 27428 – [ArrayClass] should serialize as an array by default () <https://www.w3.org/Bugs/Public/show_bug.cgi?id=27428>

[61] Deprecations and Removals in Chrome 61  |  Web  |  Google Developers () <https://developers.google.com/web/updates/2017/08/chrome-61-deprecations>

[62] Link to ES for "array index" (#427) (TimothyGu著, ) <https://github.com/heycam/webidl/commit/fe807e44fff9e165fd7ec61dda35a6f0f0328332>

[63] Explain why array index property names cannot be 2^32 - 1 · Issue #409 · heycam/webidl () <https://github.com/heycam/webidl/issues/409>

[64] Link to ES for "array index" by TimothyGu · Pull Request #427 · heycam/webidl () <https://github.com/heycam/webidl/pull/427>

[65] 20535 – consider removing indexed property setters, creators and deleters () <https://www.w3.org/Bugs/Public/show_bug.cgi?id=20535>

[66] 26986 – Rename getter and friends to legacygetter and legacyfriends () <https://www.w3.org/Bugs/Public/show_bug.cgi?id=26986>

[67] Definition of "is an array index" makes "-0" an array index · Issue #516 · heycam/webidl () <https://github.com/heycam/webidl/issues/516>

[68] Disallow -0 in algorithm for checking array index by TimothyGu · Pull Request #517 · heycam/webidl () <https://github.com/heycam/webidl/pull/517>

[69] Editorial: improve HTMLAllCollection IDL (annevk著, ) <https://github.com/whatwg/html/commit/be2f5df15c86c1847d85514602904751ec2e2b70>

[70] Do indexed getters ever return null? · Issue #532 · heycam/webidl () <https://github.com/heycam/webidl/issues/532>

[71] [LegacyArrayClass] is gone from CSSOM (emilio著, ) <https://github.com/heycam/webidl/commit/fb70995dd5da45f7a4f83ede6a0d8c885ca95d2a>

[72] [LegacyArrayClass] is gone from CSSOM. by emilio · Pull Request #550 · heycam/webidl () <https://github.com/heycam/webidl/pull/550>

[73] [cssom] Why is CSSRuleList [LegacyArrayClass] · Issue #2601 · w3c/csswg-drafts () <https://github.com/w3c/csswg-drafts/issues/2601>

[74] [cssom] Remove [LegacyArrayClass] from CSSOM interfaces. (emilio著, ) <https://github.com/w3c/csswg-drafts/commit/b05eb1b9c05c22f771aff6a3ae7cdbb4a925522e>

[75] [cssom] Why is CSSRuleList [LegacyArrayClass] · Issue #2601 · w3c/csswg-drafts () <https://github.com/w3c/csswg-drafts/issues/2601>