Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
明日から使えない廃止された Mozilla の JavaScript / Obsolete F...
Search
nodaguti
April 01, 2020
Programming
0
78
明日から使えない廃止された Mozilla の JavaScript / Obsolete Features on Mozilla JS
社内 LT で使用したスライドです
nodaguti
April 01, 2020
Tweet
Share
More Decks by nodaguti
See All by nodaguti
ABEMA スマートテレビアプリケーションのパフォーマンス改善 〜業界トップクラスを目指して〜 / Performance Improvements on ABEMA Smart TV App
nodaguti
2
1.3k
FastlyとfalcoでNode.jsレスな Webサーバー構築 : IPTV版 ABEMAアプリインフラ刷新 / Building web server using Fastly and falco without Node.js for IPTV ABEMA app
nodaguti
1
580
専任チームで実現する継続的なWebパフォーマンス改善 / Continuous Web performance improvement realised by dedicated team
nodaguti
0
760
ABEMA Webブラウザ版をより高速で高信頼にするために / Towards more performant and reliable ABEMA
nodaguti
0
1.2k
AbemaTV 新卒1年目エンジニア実録 / My first year at AbemaTV
nodaguti
3
2.7k
Chrome チームの推すこれからくる新しい Web API / Upcoming Web APIs advocated by the Chrome team
nodaguti
5
1.2k
新卒研修でテストカバレッジ99%を達成した話 / HTML 5 Conference 2018 Sponsor's LT
nodaguti
0
820
Other Decks in Programming
See All in Programming
Deno Tunnel を使ってみた話
kamekyame
0
200
AIコーディングエージェント(NotebookLM)
kondai24
0
220
The Art of Re-Architecture - Droidcon India 2025
siddroid
0
120
Socio-Technical Evolution: Growing an Architecture and Its Organization for Fast Flow
cer
PRO
0
390
クラウドに依存しないS3を使った開発術
simesaba80
0
120
JETLS.jl ─ A New Language Server for Julia
abap34
2
430
手が足りない!兼業データエンジニアに必要だったアーキテクチャと立ち回り
zinkosuke
0
800
AIエージェントの設計で注意するべきポイント6選
har1101
5
1.8k
ハイパーメディア駆動アプリケーションとIslandアーキテクチャ: htmxによるWebアプリケーション開発と動的UIの局所的適用
nowaki28
0
440
これならできる!個人開発のすゝめ
tinykitten
PRO
0
120
Jetpack XR SDKから紐解くAndroid XR開発と技術選定のヒント / about-androidxr-and-jetpack-xr-sdk
drumath2237
1
170
バックエンドエンジニアによる Amebaブログ K8s 基盤への CronJobの導入・運用経験
sunabig
0
170
Featured
See All Featured
A designer walks into a library…
pauljervisheath
210
24k
Producing Creativity
orderedlist
PRO
348
40k
Visualization
eitanlees
150
16k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
13
Ruling the World: When Life Gets Gamed
codingconduct
0
93
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
88
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.3k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
400
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
120
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.4k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
54k
Transcript
໌͔Β͑ͳ͍ ഇࢭ͞Εͨ Mozilla ͷ JavaScript Apr 01, 2020 nodaguti @
Web νʔϜ LT
ࢲͷܦྺ • 2007: Firefox 2 ͔Β Firefox ϢʔβʔʹͳΔ • 2008:
UserScript (Greasemonkey script) ͷ։ൃΛ࢝Ί Δ • 2009: userChrome.js script ͷ։ൃΛ࢝ΊΔ • 2010: Firefox add-on ͷ։ൃΛ࢝ΊΔ • 2015: Mozilla ͕ Chrome extension API ϕʔεͷ WebExtension ͱ͍͏༷ʹҠߦΛൃදɼadd-on ։ൃ Λऴྃ͢Δ
Expression Closures (ࣜΫϩʔδϟ) • Firefox 3 - Firefox 60 Ͱ͑ͨ
• Arrow function ͷઌۦ͚Έ͍ͨͳͭ • ΞυΦϯ։ൃͰׂͱॏๅͨ͠ • https://developer.mozilla.org/en-US/docs/Web/ JavaScript/Reference/Operators/Expression_Closures
Array Comprehension (ྻแ) • Firefox 30 - 58 Ͱ͑ͨ •
Mozilla ͕ ECMAScript 3.0 ࡦఆʹ͚ͯ Python ͬΆ͍ڍಈΛೖΕΑ͏ͱ͍ͯͨ͠ ࠒͷͷΒ͍͠ • ECMAScript 5.0 ͷޙʹվΊͯ proposal Λग़͚ͨ͠Ͳ reject ͞Εͨ • ࣮ for ͕ޙஔ͔ΒલஔͱҰճ༷͕มΘͬͨ • https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/ Array_comprehensions
Array Generics • Firefox 1.5 - 70 Ͱ͑ͨ • ͍͍ͪͪ
Array.prototype.slice.call() ͷΑ͏ʹॻ͔ͳͯ͘ࡁΉͷͰͱָͯͩͬ ͨ • ඪ४Խ͞Εͳ্͔ͬͨɼArray.from array spread syntax ͕ग़͖ͯͯඞཁੑ͕ ബΕͨ • https://www.fxsitecompat.dev/en-CA/docs/2019/non-standard-array-generics- have-been-deprecated/
ECMAScript for XML (E4X) • Firefox 1 - Firefox 19
Ͱ͑ͨ • XML Λ native ʹѻ͑Δػೳɽཁ built-in JSX Έ͍ͨͳͷɽ • ECMA-357 ͱͯ͠ඪ४Խ͞Ε͍͕ͯͨɼଞͷͲͷϒϥβ࣮͠ͳ͔ͬͨ • Template literals ͕ͳ͍࣌ʹώΞυΩϡϝϯτ༻ͱͯ͠େ׆༂ • ༷͕ෳࡶͰ੬ऑੑͷԹচͱͳΓɼଞϒϥβͱͷޓੑ֬อ͞Εͳ͔ͬ ͨͨΊআ͞Εͨ • https://developer.mozilla.org/en-US/docs/Archive/Web/E4X
Object.prototype.__noSuchMethod__ • Firefox 1 - 43 Ͱ͑ͨ • Ruby ͷ
method_missing Έ͍ͨͳͭ • __de fi neGetter__, __proto__ ͷΑ͏ʹ໊લͰղܾ͢Δ͋ͨΓʹ࣌Λײ͡Δ • ECMAScript 6.0 Ͱ Proxy ͕ೖͬͯ͋͑ͳ͓͘ޚ໔ʹ • https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/ Object/noSuchMethod
Object.prototype.watch / unwatch • Firefox 1 - 58 Ͱ͑ͨ •
Chrome ͕࣮͍ͯͨ͠ Object.prototype.observe Έ͍ͨͳͭ • ͲͪΒඪ४Խ͞Εͳ͍··আ͞ΕΔ͜ͱʹͳͬͨ • ࣮ߦ࣌ͷ overhead ͕େׂ͖͍ʹ usecase ͕ͦΜͳʹͳ͍ͷ͕ͩͬͨΒ͍͠ • Angular 1 ܥͷ࣌Ͱ׆༂ͦ͠͏Ͱ͕͋ͬͨ... • https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/ Global_Objects/Object/watch
͓ΘΓʹ • ࣮·ͩ private class properties Λኲኵͱͤ͞Δ Sharp Variables ͳͲհ͍ͯ͠ͳ͍ͷ͋ΔͷͰɼ
ڵຯͷ༙͍ͨํ https://developer.mozilla.org/en- US/docs/Web/JavaScript/Reference/ Deprecated_and_obsolete_features ΛͲ͏ͧ • ඪ४ԽͬͯେมͰ͢Ͷ • ඪ४Խ͞Εͳ͍ͱ༰ࣻͳ͘আ͞ΕΔͷͰɼBabel ͕ ͋ͬͯΑ͍ stage-4 ϥΠϑΛૹΓ·͠ΐ͏
͋Γ͕ͱ͏͍͟͝·ͨ͠ ✌