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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Sergio Arbeo
January 28, 2015
Programming
1
240
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
240
Decorating JavaScript - source{d} edition
serabe
1
150
Componentes: DD
serabe
0
390
Introducción a JSONAPI
serabe
1
200
Bienvenidos a Ember Madrid
serabe
2
220
Lo que la cafeína le hizo a JS
serabe
1
3k
Taller de Introducción a Ember.JS
serabe
1
210
Generadores en JavaScript
serabe
1
520
El diablo está en los detalles
serabe
0
680
Other Decks in Programming
See All in Programming
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
580
Codexに役割を持たせる 他のAIエージェントと組み合わせる実務Tips
o8n
4
1.3k
AI時代でも変わらない技術コミュニティの力~10年続く“ゆるい”つながりが生み出す価値
n_takehata
2
750
AIコードレビューの導入・運用と AI駆動開発における「AI4QA」の取り組みについて
hagevvashi
0
470
How to stabilize UI tests using XCTest
akkeylab
0
130
コードレビューをしない選択 #でぃーぷらすトウキョウ
kajitack
3
950
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1.1k
ふつうのRubyist、ちいさなデバイス、大きな一年 / Ordinary Rubyists, Tiny Devices, Big Year
chobishiba
1
450
Takumiから考えるSecurity_Maturity_Model.pdf
gessy0129
1
140
CSC307 Lecture 15
javiergs
PRO
0
240
モジュラモノリスにおける境界をGoのinternalパッケージで守る
magavel
0
3.5k
AI 開発合宿を通して得た学び
niftycorp
PRO
0
120
Featured
See All Featured
Are puppies a ranking factor?
jonoalderson
1
3.1k
The Pragmatic Product Professional
lauravandoore
37
7.2k
How GitHub (no longer) Works
holman
316
140k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
84
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.8k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
BBQ
matthewcrist
89
10k
Building an army of robots
kneath
306
46k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
Speed Design
sergeychernyshev
33
1.6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.2k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
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]