Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
The Dark Side of JavaScript
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Lucas Santos
May 17, 2021
Technology
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
The Dark Side of JavaScript
Lucas Santos
May 17, 2021
More Decks by Lucas Santos
See All by Lucas Santos
The Hitchhiker's Guide for an Amazing API with TypeScript
khaosdoctor
0
140
Escalando globalmente com TypeScript e JavaScript na Klarna
khaosdoctor
0
230
The future of JavaScript
khaosdoctor
0
99
TypeScript tips that could save your life
khaosdoctor
0
260
É hora de falar sobre Deno
khaosdoctor
0
99
JS Software testing for beginners
khaosdoctor
0
110
Ambientes dinâmicos com GitHub Actions
khaosdoctor
0
76
Integrating Containers Into JavaScript
khaosdoctor
0
97
Entendendo o ecossistema de containers
khaosdoctor
1
1.5k
Other Decks in Technology
See All in Technology
KanaAI
shreyas1009
0
140
高負荷プロダクション環境におけるAWS Lambdaのリアル 〜スケールとコストを左右する実行ライフサイクルの技術仕様〜
maimyyym
2
850
Apache Iceberg が拓く AI 時代のオープンレイクハウス
tomtanaka
0
210
検証フェーズはAIの回答を判断するための学習機会
toru_kubota
2
240
CI/CDではもう遅い - 人とAIが迂回しないDevSecOps Verify基盤の再設計 -
kintotechdev
1
630
GitHub Agentic Workflows を触ってみる
htkym
2
910
ビジネスを止めない技術的負債の返済のための戦略とその手法 - 技術的負債と向き合う / Complexity and Simplicity
soudai
PRO
2
380
生成AIを使って「人が」考える技術 ― AI時代の人機共想と実践ノウハウ|UNITT AC2026
ishiirikie
0
510
生成AIと進める探索的データ分析(2026.10.03 第122回Tokyo.R勉強会)
tatamiya
1
780
オブザーバビリティを高める AI エージェント体験を考える / Designing AI Agent Experiences That Enhance Observability
aoto
PRO
1
170
メルカリにおけるAI時代の高速プロトタイピング基盤「Arca」
ryotarai
18
14k
IR Today: Theory, Practice, and Agents
dtunkelang
0
310
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
490
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.7k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Evolving SEO for Evolving Search Engines
ryanjones
0
300
We Have a Design System, Now What?
morganepeng
55
8.3k
Into the Great Unknown - MozCon
thekraken
41
2.7k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
550
Navigating Weather and Climate Data
rabernat
0
540
Transcript
Javascript as you never saw before
cloud advocate_ who am I_
[email protected]
{twitter, facebook, linkedin…}.lsantos.dev
The magic JS
Removing Callbacks
The Dark Side of Javascript JS
Symbols
None
None
None
BUT BE AWARE_
Small usage example
Other usage example in Node.js source code bit.ly/nodejs-symbol Check it
out!
Async Iterators_
None
None
None
None
None
None
None
Promise.finally
None
Promise.allSettled
None
None
Ranges
None
None
None
Readonly properties_
Object.defineProperty
None
Object.defineProperties
‘age’ hasn’t been shown because it’s not enumerable
Private class fields_
None
None
Dynamic function creation_
None
None
in operator_
None
None
Dynamic instances by reflection_
None
None
None
Bitwise Operators_
AND
None
What!?
A B C D Result X 0 1 0 1
5 Y 0 0 0 1 1 Z 0 0 0 1 1
String as binary data
OR
None
A B C D Result X 0 1 0 1
5 Y 0 0 0 1 1 Z 0 1 0 1 5
XOR
None
A B C D Result X 0 1 0 1
5 Y 0 0 0 1 1 Z 0 1 0 0 4
Cryptography
None
NOT
None
A B C D Resultado X 0 1 0 1
5 Z 1 0 1 0 10
Existence condition
None
SHIFT
None
Multiply and divide
None
refs_ - imasters.com.br/desenvolvimento/o-lado-escuro-javascript - medium.com/trainingcenter/entendendo-promises-de-uma-vez-por-todas-3 2442ec725c2 - imasters.com.br/desenvolvimento/campos-publicos-e-privados-em-classes-j avascript-o-que-vem-por-ai-no-esnext -
imasters.com.br/javascript/futuro-das-promises-no-javascript - medium.com/trainingcenter/iterators-em-javascript-880adef14495 - medium.com/trainingcenter/reflection-em-javascript-73fc0e702e2 - developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objec ts/Reflect - slides.lsantos.dev/desmistificando-heranca-e-prototipos-no-javascript - dev.to/khaosdoctor/entendendo-async-iterators-1opo
thank you_ info.lsantos.dev