frozen array

frozen array

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

仕様書

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

[43]

x
インターフェイス
indexed getter
indexed getter
length
length
iterable
iterable
contains
contains
ArrayClass
ArrayClass
named getter
named getter
legacycaller
legacycaller
edits
編集
x
JavaScript Array
indexed getter
length
x
JavaScript String
indexed getter
length
x
JavaScript 型付き配列型
x
JavaScript ArrayBuffer
x
JavaScript DataView
x
Web IDL sequence<>
x
Web IDL FrozenArray<>
x
Window
indexed getter
length
named getter
x
HTMLFormElement
indexed getter
length
named getter
x
HTMLSelectElement
indexed getter
item
length
x
NodeList
indexed getter
item
length
iterable
x
NamedNodeMap
indexed getter
item
length
edits
set remove
x
HTMLCollection
indexed getter
item
length
named getter
x
HTMLAllCollection
indexed getter
item
length
named getter
legacycaller
x
HTMLFormControlsCollection
indexed getter
item
length
named getter
x
HTMLOptionsCollection
indexed getter
item
length
named getter
x
VideoTrackList
indexed getter
length
x
AudioTrackList
indexed getter
length
x
TextTrackList
indexed getter
length
x
PluginArray
indexed getter
item
length
named getter
x
Plugin
indexed getter
item
length
named getter
x
MimeTypeArray
indexed getter
item
length
named getter
x
StyleSheetList
ArrayClass
x
CSSRuleList
ArrayClass
x
CSSStyleDeclaration
named getter
x
MediaList
ArrayClass
x
TouchList
x
DataTransferItemList
indexed getter
length
edits
add remove clear
x
DOMTokenList
indexed getter
item
contains
length
iterable
edits
add remove toggle replace
x
FileList
x
History
length
#
history.index
x
SourceBufferList
length
indexed getter
x
DOMStringList
length
indexed getter
item
contains
x
DOMImplementationList (廃止)
x
NameList (廃止)
x
CanvasPixelArray (廃止)
x
HTMLPropertiesCollection (廃止)
indexed getter
item
length
named getter
x
ClientRectListDOMRectList廃止
indexed getter
item
length
x
Web IDL T[] (廃止)
x
Elements (廃止)
indexed getter
length
iterable

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>