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
JavaScript through ages
Search
Basia Madej
October 08, 2014
Technology
140
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
JavaScript through ages
JavaScript, Modern frameworks & Angular.js
Basia Madej
October 08, 2014
More Decks by Basia Madej
See All by Basia Madej
HTML with a little CSS
basiam
1
120
Angular.js for beginners
basiam
3
150
Other Decks in Technology
See All in Technology
C#未経験の僕がAIに読めるコードを書かせるまで
maguroalternative
0
250
beyond jj: config & tools ecosystem
indirect
0
5.9k
AI de Idea
kawaguti
PRO
2
130
2026_devsumi_ozono.pdf
o3
3
580
JSONataとAWS Step Functionsで目指すRuntimelessな世界
mu7889yoon
0
450
人間はどの意思決定を手放せるのか
kawasima
15
8k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
16
120k
The Knowledge Spine: A Machine-Executable Ontology for Governed Marketing Activation
vananth22
0
120
顧客に向き合う開発組織へ。リアーキテクチャとフィーチャーチーム化で挑む組織改革
safie
0
2.4k
【技術的負債conf】事業成長に伴う技術的負債の説明責任とAIによるモニタリング、認知的負債について
i35_267
3
2.1k
Slack上でインフラをトラブルシュートする! Agentic Platform Engineeringの第一歩
teru0x1
5
1.9k
Vibe Coding で作ったプロダクトをどう安全に動かすか / How to Safely Run Products Built with Vibe Coding
glidenote
0
510
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
410
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
Documentation Writing (for coders)
carmenintech
77
5.5k
Building the Perfect Custom Keyboard
takai
2
880
Site-Speed That Sticks
csswizardry
13
1.5k
エンジニアに許された特別な時間の終わり
watany
109
250k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Crafting Experiences
bethany
1
350
Transcript
JavaScript through ages @basiamadej
None
1995 Netscape Brendan Eich JavaScript !== Java
• in the browser • scripting • lightweight • fast
• powerful • not that difficult • multi-paradigm
JavaScript - general • based on C syntax • (almost)
everything is an Object • Prototypes, not Classes
3 parts of client-side JS • syntax (ECMAScript 262 standard)
• access to Document Object Model (document) • access to Browser Object Model (window) ◦ location, history, screen, navigator, alert/confirm/prompt, timing
None
Events, events and events
• https://www.destroyallsoftware.com/talks/wat • http://wtfjs.com/ Popular bad things
Actual bad things • global variables • block syntax, no
block scope • eval(“1+1”) • phony Arrays • typeOf, NaN • poor bitwise operators
None
Prototype.js …...
jQuery • more friendly than vanilla JavaScript • for animations
• for stuff that look nice • plenty of plugins • for UX/UI people and designers • for small projects
None
None
Modern frameworks & libraries
• for Single Page Applications • developed by Google &
community • https://angularjs.org/
Cool things about Angular • directives • two-way data bindings
• Model-View-Whatever • jQLite & AngularUI • history/routes
Directives • ngApp • ngModel • ngBind • ngIf •
ngRepeat • ……. • …….
Two-Way Data Binding
Model-View-Whatever
Model-View-Controller
jQLite & AngularUI
History & Routes
None
None