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 2015 & 2016
Search
Yusuke Miyazaki
June 20, 2016
Programming
0
210
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.5k
Python ウェブアプリケーションのためのプロファイラの実装 // Implementation of a profiler for Python web applications
ymyzk
2
5.1k
CAMPHOR- のスケジュール管理を支える技術 // Schedule Management in CAMPHOR-
ymyzk
1
520
tmux 入門 / Introduction to tmux
ymyzk
0
660
技術カンファレンスのススメ / Tech Conference
ymyzk
0
400
Proper Tail Calls - New Feature in ECMAScript 2015
ymyzk
1
360
コンテナ型仮想化入門 / Introduction to container-based virtualization
ymyzk
0
300
計算機科学実験及び演習のための Git / Git for Hardware and Software Laboratory Project
ymyzk
0
220
漸進的型付けについて語る会 オープニング / Gradual Typing Opening
ymyzk
0
460
Other Decks in Programming
See All in Programming
Ruby Function Composition
bkuhlmann
1
330
AWS CDKコントリビュートTIPS / aws-cdk-contribution-tips
gotok365
2
120
코틀린으로 멀티플랫폼 만들기
pangmoo
0
150
Goのmultiple errorsについて (2024年4月版)
syumai
3
630
2 週間で Twitter Bot を作ってみた
contour_gara
0
320
スクラムガイドのスプリントレトロスペクティブを改めて読みかえしてみた / Re-reading the Sprint Retrospective Section in the Scrum Guide
mackey0225
3
410
HUIT新歓2024「競技プログラミング、やってみませんか?」
slephy2784
1
270
Komplexe Oberflächen mit SVG und der Web Animation API
joergneumann
0
670
What We Can Learn From OSS
inouehi
0
420
Blue/Greenデプロイの導入による 運用フローの改善
kudoas
1
370
データアナリストが行うDatabricksを活用したETLの自動化事例
shinoa
0
260
大規模UIKitベースアプリへのTCAの段階的導入/gradual-adoption-of-tca-in-a-large-scale-uikit-based-app
takehilo
1
110
Featured
See All Featured
From Idea to $5000 a Month in 5 Months
shpigford
377
45k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
244
20k
The Art of Programming - Codeland 2020
erikaheidi
42
12k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
187
16k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
125
32k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
9
8.3k
Mobile First: as difficult as doing things right
swwweet
216
8.6k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
7
1k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
78
42k
Atom: Resistance is Futile
akmur
259
25k
Fantastic passwords and where to find them - at NoRuKo
philnash
37
2.5k
Learning to Love Humans: Emotional Interface Design
aarron
267
39k
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