Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
モダンJavaScript入門
Search
Daichi Sunagawa
October 16, 2023
Programming
40
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
モダンJavaScript入門
Daichi Sunagawa
October 16, 2023
More Decks by Daichi Sunagawa
See All by Daichi Sunagawa
フロントエンドの設計で大事なこと
sngw0113
0
66
10分でわかるNext.js14
sngw0113
0
130
React と Next.js について
sngw0113
0
58
フロント開発でよく使われるライブラリの紹介
sngw0113
0
38
【React入門】絶対に躓かない Reactワークショップ #3
sngw0113
0
26
【React入門】絶対に躓かない Reactワークショップ #2
sngw0113
0
43
【React入門】絶対に躓かない Reactワークショップ #1.pdf
sngw0113
0
160
Other Decks in Programming
See All in Programming
APNsからLive Activityを開始する話
yumnumm
0
170
ジョジョの世界をXRで再現する
mofurune
0
160
SalesForceを内製化!? ~ HR事業を支える顧客管理基盤のインフラを大公開 ~
oku053
0
180
golang-bob.pdf
iwatsukayura
0
130
Workers Cache を知る
syumai
0
360
PumaからFalconに移行したRailsアプリケーションでの実践
falcon8823
0
170
Apple Intelligence を用いた個人情報誤送信防止、及びユーザーリクエスト体験の改善について
yukiny
0
350
C#の現在地 進化の歴史と、AI時代の.NET Everywhere
neuecc
5
5.2k
Railsバージョンを4倍にした話
optim
0
350
残高管理から台帳サービスへの進化
artoy
1
200
Agents on Rails - Rails at Scale 2026
irinanazarova
0
560
KiroのSpecで「五目並べ」を作ってみる
satoshi256kbyte
1
380
Featured
See All Featured
The Curse of the Amulet
leimatthew05
3
16k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
ラッコキーワード サービス紹介資料
rakko
1
5.3M
RailsConf 2023
tenderlove
30
1.6k
Balancing Empowerment & Direction
lara
6
1.3k
How to train your dragon (web standard)
notwaldorf
96
6.9k
The Cost Of JavaScript in 2023
addyosmani
55
10k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
570
Paper Plane
katiecoart
PRO
5
54k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
630
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Transcript
モダン JavaScript 入門 ES2015(ES6) 以降の書き方と Webpack, Babel について Daichi Sunagawa
モダンJavaScript とは? 仮想DOMとは? ECMAScript とは? Babel とは? Webpack とは? この書き方知ってる?
実践モダンJavaScript 1. 2. 3. 4. 5. 6. 7. アジェンダ
1. React、Vue、Angular、Riot 等の 仮想DOM を用いるライブ ラリ/フレームワークを利用している 2. パッケージマネージャ(npm,yarnなど)を利用している 3. 主に
ES2015 以降の記法を利用している 4. トランスパイラ(Babelなど)を利用している 5. モジュールバンドラー(Webpackなど)を利用している モダンJavaScriptとは? 厳密な定義はないものの、現状よく言われているのは...
1. React、Vue、Angular、Riot 等の 仮想DOM を用いるライブ ラリ/フレームワークを利用している 2. パッケージマネージャ(npm,yarnなど)を利用している 3. 主に
ES2015 以降の記法を利用している 4. トランスパイラ(Babelなど)を利用している 5. モジュールバンドラー(Webpackなど)を利用している モダンJavaScriptとは? 厳密な定義はないものの、現状よく言われているのは...
仮想DOMとは UI の理想的な、または"仮想"表現を メモリー内に保持し、"実際の" DOM と同期させる というプログラミングの概念 Vue.js より引用
DOMとは Document Object Model の略。 ウェブ上の文書のコンテンツと構造からなるオブジ ェクトのデータ表現のこと。 ウェブページとスクリプトやプログラミング言語を 接続するもの。 MDN
より引用
Document html head body h1 モダンJavaScript入門 p ES2015(ES6) 以降の書き方と Webpack,
Babel について id Node HTMLElement Text Attr … getElementById()
Document html head body h1 モダンJavaScript入門 p ES2015(ES6) 以降の書き方と Webpack,
Babel について JavaScriptでDOMを操作して、 Webページの要素を 操作することができる id … getElementById()
React や Vue.js は、 「実際のDOMを直接操作するのではなく、 仮想DOMを操作した結果を、DOMに反映する」 ライブラリ / フレームワーク
仮想DOMのメリット 第3回『ReactとNext.js』に続く... とりあえず、仮想DOMを使うのがナウい。
1. React、Vue、Angular、Riot 等の 仮想DOM を用いるライブ ラリ/フレームワークを利用している 2. パッケージマネージャ(npm,yarnなど)を利用している 3. 主に
ES2015 以降の記法を利用している 4. トランスパイラ(Babelなど)を利用している 5. モジュールバンドラー(Webpackなど)を利用している モダンJavaScriptとは? 厳密な定義はないものの、現状よく言われているのは...
ECMAScriptとは 国際的な標準化団体のEcma International (エクマ・インターナショナル)が策定している JavaScriptの標準規格。 IT用語辞典 e-Words より引用
JavaScriptが 抱えていた問題点 JavaScriptは、Netscape Communications 社によって 開発されたプログラミング言語で、 同社が開発していたブラウザ Netscape Navigator で動作
するものでした。 その後、他のブラウザでも利用できるようになり、 ブラウザごとに機能拡張が行われ、互換性に問題が生じるよ うになりました。
ECMAScriptとは 国際的な標準化団体のEcma International (エクマ・インターナショナル)が策定している JavaScriptの標準規格。 IT用語辞典 e-Words より引用
ECMAScript の仕様を実装したものが JavaScript JavaScriptはブラウザごとに仕様が実装されている (JavaScriptエンジンが作られている) e.g) V8, SpiderMonkey, etc... ECMAScriptと
JavaScriptの関係は?
Edition 略称 公開日 ECMAScript 1 ES1 1997年6月 ECMAScript 2 ES2
1998年6月 ECMAScript 3 ES3 1999年12月 ECMAScript 4 ES4 破棄 ECMAScript 5 ES5 2009年12月 ECMAScript 5.1 ES5.1 2011年6月 ECMAScript 2015 ES2015 / ES6 2015年6月 ECMAScript 2016 ES2016 / ES7 2016年6月 ECMAScript 2017 ES2017 / ES8 2017年6月 ECMAScript 2018 ES2018 / ES9 2018年6月 ECMAScript 2019 ES2019 / ES10 2019年6月 ECMAScript 2020 ES2020 / ES11 2020年6月 ECMAScriptのバージョン は? JavaScriptはブラウザごとに動作が異なるため、バージョンという概念がない
1. React、Vue、Angular、Riot 等の 仮想DOM を用いるライブ ラリ/フレームワークを利用している 2. パッケージマネージャ(npm,yarnなど)を利用している 3. 主に
ES2015 以降の記法を利用している 4. トランスパイラ(Babelなど)を利用している 5. モジュールバンドラー(Webpackなど)を利用している モダンJavaScriptとは? 厳密な定義はないものの、現状よく言われているのは...
トランスパイラとは あるプログラミング言語で書かれたプログラムを、 別のプログラミング言語のプログラムに変換するソ フトウェア。 IT用語辞典 e-Words より引用
Babelとは JavaScriptのコードを新しい書き方から古い書き方 に変換するツール。
1. React、Vue、Angular、Riot 等の 仮想DOM を用いるライブ ラリ/フレームワークを利用している 2. パッケージマネージャ(npm,yarnなど)を利用している 3. 主に
ES2015 以降の記法を利用している 4. トランスパイラ(Babelなど)を利用している 5. モジュールバンドラー(Webpackなど)を利用している モダンJavaScriptとは? 厳密な定義はないものの、現状よく言われているのは...
複数のファイルを1つにまとめて出力してくれる ツール。 モジュールバンドラとは
複数のJavaScriptファイルを 一つのファイルにまとめて 出力するツール Webpackとは
Webpack、Babelの使い方 詳しい使い方は、時間があればいつかやります。
JavaScriptを学ぶなら 新しいESバージョンで 学ぶ方がお得
さて、ここからが本題です。 ECMAScript2015以降の書き方、 いくつ知ってるでしょうか。 この書き方知ってる?
includes, map, filter, etc... 配列操作系
オブジェクトリテラル, スプレッド構文 オブジェクト系
オプショナルチェーン オブジェクト系
Reactを添えて ここまでのまとめ
async/await, Promise.all 非同期処理
Nullish Coalescing Operator, Numeric Separators その他
現代的なJSの書き方で出力してくれるらしい。 ChatGPTでJSのコードを出力させるときは、 "現代的なJSの書き方で"のような文言を入れると 最後に