Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
明日から使えない廃止された Mozilla の JavaScript / Obsolete F...
Search
nodaguti
April 01, 2020
Programming
90
0
Share
明日から使えない廃止された Mozilla の JavaScript / Obsolete Features on Mozilla JS
社内 LT で使用したスライドです
nodaguti
April 01, 2020
More Decks by nodaguti
See All by nodaguti
ABEMA スマートテレビアプリケーションのパフォーマンス改善 〜業界トップクラスを目指して〜 / Performance Improvements on ABEMA Smart TV App
nodaguti
2
1.4k
FastlyとfalcoでNode.jsレスな Webサーバー構築 : IPTV版 ABEMAアプリインフラ刷新 / Building web server using Fastly and falco without Node.js for IPTV ABEMA app
nodaguti
1
630
専任チームで実現する継続的なWebパフォーマンス改善 / Continuous Web performance improvement realised by dedicated team
nodaguti
0
800
ABEMA Webブラウザ版をより高速で高信頼にするために / Towards more performant and reliable ABEMA
nodaguti
0
1.3k
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
850
Other Decks in Programming
See All in Programming
運用エージェントは "作る" から "育てる" へ - 記憶と自己進化の3層設計パターン / self-evolving-agents-three-layer-agent-design
gawa
10
990
空間オーディオの活用
objectiveaudio
0
160
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
170
Migrations : C'est une question d'hygiène !
vinceamstoutz
0
1k
いつか誰かが、と思っていた フロントエンド刷新5年間の実践知
kiichisugihara
1
290
20260514 - build with ai 2026 - build LINE Bot with Gemini CLI
line_developers_tw
PRO
0
460
AI時代になぜ書くのか
mutsumix
0
450
TSKaigi2026-静的解析への投資がAI時代のコード品質を支える ── カスタムESLintルールの設計と運用
hayatokudou
5
970
横断組織出身のQAEがインプロセスQAEでつまずいたこと・活かせたこと
ty89
0
170
ビジネスモデルから紐解く、AI+型駆動開発
hirokiomote
2
1.2k
How We Practice Exploratory Testing in Iterative Development( #scrumniigata ) / 反復開発の中で、探索的テストをどう実施しているか
teyamagu
PRO
3
1.1k
密結合なバックエンドから TypeScript のコードを生成する
kemuridama
1
320
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
77
5.3k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9k
Technical Leadership for Architectural Decision Making
baasie
3
370
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.5k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
340
How to train your dragon (web standard)
notwaldorf
97
6.6k
[SF Ruby Conf 2025] Rails X
palkan
2
1k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
230
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
400
Ethics towards AI in product and experience design
skipperchong
2
280
Mobile First: as difficult as doing things right
swwweet
225
10k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.4k
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 ϥΠϑΛૹΓ·͠ΐ͏
͋Γ͕ͱ͏͍͟͝·ͨ͠ ✌