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
Modern JavaScript - Introduction to ECMAScript ...
Search
Yusuke Miyazaki
June 20, 2016
Programming
0
240
Modern JavaScript - Introduction to ECMAScript 2015 & 2016
Simple example of proper tail calls:
https://gist.github.com/ymyzk/b0e065956978faed5116c4cacbb8efe5
Yusuke Miyazaki
June 20, 2016
Tweet
Share
More Decks by Yusuke Miyazaki
See All by Yusuke Miyazaki
Adopting Kafka for the #1 job site in the world
ymyzk
1
7.8k
Python ウェブアプリケーションのためのプロファイラの実装 // Implementation of a profiler for Python web applications
ymyzk
2
5.5k
CAMPHOR- のスケジュール管理を支える技術 // Schedule Management in CAMPHOR-
ymyzk
1
660
tmux 入門 / Introduction to tmux
ymyzk
0
810
技術カンファレンスのススメ / Tech Conference
ymyzk
0
500
Proper Tail Calls - New Feature in ECMAScript 2015
ymyzk
1
420
コンテナ型仮想化入門 / Introduction to container-based virtualization
ymyzk
0
360
計算機科学実験及び演習のための Git / Git for Hardware and Software Laboratory Project
ymyzk
0
260
漸進的型付けについて語る会 オープニング / Gradual Typing Opening
ymyzk
0
540
Other Decks in Programming
See All in Programming
アンドパッドの Go 勉強会「 gopher 会」とその内容の紹介
andpad
0
250
Cline指示通りに動かない? AI小説エージェントで学ぶ指示書の書き方と自動アップデートの仕組み
kamomeashizawa
1
560
PHP 8.4の新機能「プロパティフック」から学ぶオブジェクト指向設計とリスコフの置換原則
kentaroutakeda
1
310
ktr0731/go-mcpでMCPサーバー作ってみた
takak2166
0
170
Is Xcode slowly dying out in 2025?
uetyo
1
180
Beyond Portability: Live Migration for Evolving WebAssembly Workloads
chikuwait
0
380
WindowInsetsだってテストしたい
ryunen344
1
190
Webの外へ飛び出せ NativePHPが切り拓くPHPの未来
takuyakatsusa
2
190
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
0
160
Haskell でアルゴリズムを抽象化する / 関数型言語で競技プログラミング
naoya
17
4.8k
統一感のある Go コードを生成 AI の力で手にいれる
otakakot
0
3k
Julia という言語について (FP in Julia « SIDE: F ») for 関数型まつり2025
antimon2
3
970
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
281
13k
The Cost Of JavaScript in 2023
addyosmani
51
8.4k
What's in a price? How to price your products and services
michaelherold
245
12k
How to train your dragon (web standard)
notwaldorf
92
6.1k
GraphQLとの向き合い方2022年版
quramy
46
14k
A designer walks into a library…
pauljervisheath
206
24k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.8k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.8k
Producing Creativity
orderedlist
PRO
346
40k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Transcript
Introduction to ECMAScript 2015 & 2016 ޒेཛྷɾӬݚڀࣨன৯ձ :VTVLF.JZB[BLJ !૯߹ݚڀ߸ؗ Modern
JavaScript
Javascript?
JavaScript • Not Javascript • cf. OCaml
Why JavaScript? • Used in everywhere! • Web Browsers (Desktop
& Mobile) • Node.js (Server)
Table of Contents • History of JavaScript • Features of
ECMAScript 2015 & 2016 • How to Write Modern JavaScript
JavaScript & ECMAScript • JavaScript (JS) • Programming language •
ECMAScript (ES) • Language specification (ECMA-262) standardized by Ecma International • Other standards: ECMA-334 (C#)
History of JavaScript
Beginnings of JavaScript "JavaScript was originally developed in 10 days
in May 1995 by Brendan Eich, while he was working for Netscape Communications Corporation." From Wikipedia
History of ECMAScript • Edition 1: June 1997 • Edition
2: June 1998 • Edition 3: December 1999 • Edition 4: Abandoned!!
History of ECMAScript • Edition 5: December 2009 • Almost
supported in so-called "modern" browsers • Features • strict mode • Array.prototype.map/filter/reduce • JSON
History of ECMAScript • Edition 6: June 2015 • ECMAScript
2015, not ECMAScript 6 • ECMAScript will be released annually • Stages: 0 Strawman -> 1 Proposal -> 2 Draft -> 3 Candidate -> 4 Finished
History of ECMAScript • Edition 6: June 2015 • Implementation
in progress… • WebKit 100%? • Firefox/Edge/Chrome/Node.js 90%+ • See compat table for more details
History of ECMAScript • Edition 7: June 2016 • Minor
update from ECMAScript 2015
Features of ES 2015 & 2016
Demo
Links • http://kangax.github.io/compat-table/es6/ • http://es6-features.org/ • https://webkit.org/blog/6240/ecmascript-6- proper-tail-calls-in-webkit/
How to Write Modern JavaScript
Use modern impl. • Server-side app. (Node.js 6+) • Support
only modern web browsers
Use Transpilers • Compile JS code to JS code •
e.g. ECMAScript 2015 -> ECMAScript 5 • Implementations • Babel • Traceur
Conclusion • JavaScript is getting better day by day •
Write "modern" JavaScript • Use some tools to write modern JavaScript
Q&A