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
Lo que la cafeína le hizo a JS
Search
Sergio Arbeo
January 28, 2015
Programming
1
220
Lo que la cafeína le hizo a JS
Edición extendida y revisada dada en MadridJS. Enero 2015.
Sergio Arbeo
January 28, 2015
Tweet
Share
More Decks by Sergio Arbeo
See All by Sergio Arbeo
Testing sin Dogmas
serabe
0
230
Decorating JavaScript - source{d} edition
serabe
1
130
Componentes: DD
serabe
0
360
Introducción a JSONAPI
serabe
1
180
Bienvenidos a Ember Madrid
serabe
2
210
Lo que la cafeína le hizo a JS
serabe
1
3k
Taller de Introducción a Ember.JS
serabe
1
200
Generadores en JavaScript
serabe
1
520
El diablo está en los detalles
serabe
0
650
Other Decks in Programming
See All in Programming
What's New in Web AI?
christianliebel
PRO
0
130
[堅牢.py #1] テストを書かない研究者に送る、最初にテストを書く実験コード入門 / Let's start your ML project by writing tests
shunk031
11
5.3k
Patterns of Patterns (and why we need them)
denyspoltorak
0
110
Herb to ReActionView: A New Foundation for the View Layer @ San Francisco Ruby Conference 2025
marcoroth
0
180
問題の見方を変える「システム思考」超入門
panda_program
0
300
Vueで学ぶデータ構造入門 リンクリストとキューでリアクティビティを捉える / Vue Data Structures: Linked Lists and Queues for Reactivity
konkarin
1
320
Stay Hacker 〜九州で生まれ、Perlに出会い、コミュニティで育つ〜
pyama86
2
2.3k
All(?) About Point Sets
hole
0
200
Developing Specifications - Jakarta EE: a Real World Example
ivargrimstad
0
150
全員アーキテクトで挑む、 巨大で高密度なドメインの紐解き方
agatan
5
6.7k
Web エンジニアが JavaScript で AI Agent を作る / JSConf JP 2025 sponsor session
izumin5210
4
1.9k
AIと協働し、イベントソーシングとアクターモデルで作る後悔しないアーキテクチャ Regret-Free Architecture with AI, Event Sourcing, and Actors
tomohisa
2
6.5k
Featured
See All Featured
Designing Experiences People Love
moore
142
24k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The Invisible Side of Design
smashingmag
302
51k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
11
940
Producing Creativity
orderedlist
PRO
348
40k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
680
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
Designing for humans not robots
tammielis
254
26k
Transcript
Sergio Arbeo {Back,Front}-end developer at codecantor @Serabe Lo que la
cafeína le hizo a JS Historia de un despecho transpilado
Sergio Arbeo {Back,Front}-end developer at codecantor @Serabe Lo que la
cafeína le hizo a JS Historia de un despecho transpilado Extended version, just not Peter- Jackson-extended
Sergio Arbeo {Back,Front}-end developer at codecantor @Serabe Lo que la
cafeína le hizo a JS Historia de un despecho transpilado Extended version, just not Peter- Jackson-extended You know what I mean
None
CODECANTOR
/Ember-js-Madrid
I loved CoffeeScript
I loved CoffeeScript
CoffeeScript V JavaScript
CoffeeScript V ES5
CoffeeScript ES6 V
WHY?
WHY? Implicit returns
WHY? Implicit returns No named functions
WHY? Implicit returns No named functions Strange regexes
WHY? Implicit returns No named functions Strange regexes Significant
whitespace
WHY? Implicit returns No named functions Strange regexes Significant
whitespace Generators
Ember.JS
None
None
None
ES6
Destructuring
None
None
None
None
NESTABLE
None
None
Destructuring DE
None
Arrays too
None
None
None
None
NESTABLE TOO
MODULES
None
None
None
None
None
None
Named exports
None
None
None
Ember-‐CLI
let / const
let • The new var. • Block scope.
• No hoisRng.
let • The new var. • Block scope.
• No hoisRng. Actually, it does hoist, but raises a syntactic error at runtime when used before being asigned.
Symbols Interlude
Symbol New primiRve type that serves as unique IDs.
Symbol
CLASSES
CLASSES The Good Parts
METHODS
None
STRING TEMPLATES Interlude
None
Computed properRes
None
None
None
None
SYMBOLS Interlude
Symbol Can be used as property names. keys
None
Some symbols • Symbol.hasInstance • Symbol.isConcatSpreadable •
Symbol.isRegExp • Symbol.toPrimiRve • Symbol.toStringTag • Symbol.unscopables • Symbol.iterator
{G,S}ETTER
None
None
FUNCTIONS
SPREAD OP
None
None
None
None
None
None
1 -‐> 2 -‐> 3
1 -‐> 2 -‐> 3 14
None
Symbol.iterator 12.2.4.2
None
DEFAULT
None
None
fn
None
None
Most important => fn feature LEXICAL THIS
None
No Rme for…
CLASSES The not-that-good Parts
GENERATOR
COMPREHENSIONS
async/await ES7
NAMED EXPORTS
# LITERALS
# LITERALS BINARY: 0b101
# LITERALS BINARY: 0b101 OCTAL: 0o67
# LITERALS
APIs
QUESTIONS?
Thank you! @Serabe
[email protected]