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
220
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.7k
Python ウェブアプリケーションのためのプロファイラの実装 // Implementation of a profiler for Python web applications
ymyzk
2
5.4k
CAMPHOR- のスケジュール管理を支える技術 // Schedule Management in CAMPHOR-
ymyzk
1
610
tmux 入門 / Introduction to tmux
ymyzk
0
760
技術カンファレンスのススメ / Tech Conference
ymyzk
0
470
Proper Tail Calls - New Feature in ECMAScript 2015
ymyzk
1
380
コンテナ型仮想化入門 / Introduction to container-based virtualization
ymyzk
0
340
計算機科学実験及び演習のための Git / Git for Hardware and Software Laboratory Project
ymyzk
0
250
漸進的型付けについて語る会 オープニング / Gradual Typing Opening
ymyzk
0
520
Other Decks in Programming
See All in Programming
.NETでOBS Studio操作してみたけど…… / Operating OBS Studio by .NET
skasweb
0
120
asdf-ecspresso作って 友達が増えた話 / Fujiwara Tech Conference 2025
koluku
0
1.4k
php-conference-japan-2024
tasuku43
0
430
Асинхронность неизбежна: как мы проектировали сервис уведомлений
lamodatech
0
1.3k
AWS re:Invent 2024個人的まとめ
satoshi256kbyte
0
100
ある日突然あなたが管理しているサーバーにDDoSが来たらどうなるでしょう?知ってるようで何も知らなかったDDoS攻撃と対策 #phpcon.2024
akase244
2
7.7k
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
1.3k
PHPカンファレンス 2024|共創を加速するための若手の技術挑戦
weddingpark
0
140
ChatGPT とつくる PHP で OS 実装
memory1994
PRO
3
190
chibiccをCILに移植した結果 (NGK2025S版)
kekyo
PRO
0
130
functionalなアプローチで動的要素を排除する
ryopeko
1
200
DMMオンラインサロンアプリのSwift化
hayatan
0
180
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
The Pragmatic Product Professional
lauravandoore
32
6.4k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
3
240
Agile that works and the tools we love
rasmusluckow
328
21k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.8k
Testing 201, or: Great Expectations
jmmastey
41
7.2k
A Philosophy of Restraint
colly
203
16k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Practical Orchestrator
shlominoach
186
10k
Thoughts on Productivity
jonyablonski
68
4.4k
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