SlideShare a Scribd company logo
Introduction to Javascript

            Kevin Ball
        Co-Founder & CTO

         kball@fashioningchange.com
                   @kbal11
Introduction to Javascript
Introduction to Javascript
Introduction to Javascript

• What is Javascript?
Introduction to Javascript

• What is Javascript?
• Programming Basics
Introduction to Javascript

• What is Javascript?
• Programming Basics
• HTML & the Dom
Introduction to Javascript

• What is Javascript?
• Programming Basics
• HTML & the Dom
• What makes Javascript Different
What is Javascript?
What is Javascript?
What is Javascript?

• The Language of Client-Side Web Development
What is Javascript?

• The Language of Client-Side Web Development
• Available in every browser
What is Javascript?

• The Language of Client-Side Web Development
• Available in every browser
• A Powerful Dynamic Programming Language
Web Architecture
Web Architecture
   Client/Server Model
Web Architecture
   Client/Server Model
Web Architecture
   Client/Server Model
Web Architecture
   Client/Server Model
Web Architecture
   Client/Server Model
Web Architecture
   Client/Server Model
Web Architecture
   Client/Server Model
Web Architecture
   Client/Server Model
Web Architecture
   Client/Server Model
Available in Every Browser
Available in Every Browser

• No additional tools required
Available in Every Browser

• No additional tools required
• Start playing around right away!
Browser Demo
    hello.html
Programming Basics
      Just Jump In
Programming Basics
      Just Jump In
Programming Basics
      Numbers
Programming Basics
      Numbers
Programming Basics
       Numbers


›2+2
Programming Basics
        Numbers


›2+2
==> 4
Programming Basics
              Numbers


›2+2
==> 4
› 5.0 * 0.5
Programming Basics
              Numbers


›2+2
==> 4
› 5.0 * 0.5
==> 2.5
Programming Basics
       Strings
Programming Basics
       Strings
Programming Basics
                Strings

› “Hello” + “World”;
Programming Basics
                Strings

› “Hello” + “World”;
==> “HelloWorld”
Programming Basics
                Strings

› “Hello” + “World”;
==> “HelloWorld”
› 2+ “Hello”;
Programming Basics
                Strings

› “Hello” + “World”;
==> “HelloWorld”
› 2+ “Hello”;
==> “2Hello”
Programming Basics
                    Strings

› “Hello” + “World”;
==> “HelloWorld”
› 2+ “Hello”;
==> “2Hello”
› “Hello”.length;
Programming Basics
                    Strings

› “Hello” + “World”;
==> “HelloWorld”
› 2+ “Hello”;
==> “2Hello”
› “Hello”.length;
==> 5
Programming Basics
      Variables
Programming Basics
      Variables
Programming Basics
                 Variables

› var five = 5;
Programming Basics
                 Variables

› var five = 5;
 ==> 5
Programming Basics
                 Variables

› var five = 5;
 ==> 5
› five + 10;
Programming Basics
                 Variables

› var five = 5;
 ==> 5
› five + 10;
==> 15
Programming Basics
                 Variables

› var five = 5;
 ==> 5
› five + 10;
==> 15
› five;
Programming Basics
                 Variables

› var five = 5;
 ==> 5
› five + 10;
==> 15
› five;
==> 5
Programming Basics
      Variables
Programming Basics
                Variables

› var students = 5;
Programming Basics
                Variables

› var students = 5;
==> 5
Programming Basics
               Variables

› var students = 5;
==> 5
› students = students + 10;
Programming Basics
               Variables

› var students = 5;
==> 5
› students = students + 10;
==> 15
Programming Basics
               Variables

› var students = 5;
==> 5
› students = students + 10;
==> 15
› students;
Programming Basics
               Variables

› var students = 5;
==> 5
› students = students + 10;
==> 15
› students;
==> 15
Programming Basics
       If/Then
Programming Basics
       If/Then
Programming Basics
               If/Then

var students = 5;
Programming Basics
                 If/Then

var students = 5;
if (students > 10) {
  alert(“Big Class!”);
} else {
  alert (“Small Class!”);
}
Browser Demo
   if_then.html
Programming Basics
       Loops
Programming Basics
       Loops
Programming Basics
                Loops

var students = 5;
Programming Basics
                Loops

var students = 5;
while (students <10) {
  students = students + 1;
  document.write(“More!<br/>”);
}
document.write(students + “ students”)
Browser Demo
   while.html
Programming Basics
      Functions
Programming Basics
      Functions
Programming Basics
              Functions

var plusTen = function(num) {
  return num + 10;
}
Programming Basics
               Functions

var plusTen = function(num) {
  return num + 10;
}
› var students = 5;
Programming Basics
              Functions

var plusTen = function(num) {
  return num + 10;
}
› var students = 5;
› students = plusTen(students);
Programming Basics
              Functions

var plusTen = function(num) {
  return num + 10;
}
› var students = 5;
› students = plusTen(students);
==> 15
HTML and the DOM
HTML and the DOM
HTML and the DOM
<html>
 <body>
  <h1>Hello</h1>
  <div id=‘container’>
    <p id=‘inner’>I’m in the middle!</p>
  </div>
 </body>
</html>
HTML and the DOM
Browser Demo
    dom.html
HTML and the DOM
HTML and the DOM
HTML and the DOM
DOM Manipulation
DOM Manipulation
<html>
 <body>
  <h1>Hello</h1>
  <div id=‘container’>
    <p id=‘inner’>I’m in the middle!</p>
  </div>
 </body>
</html>
DOM Manipulation
<html>
 <body>
  <h1>Hello</h1>
  <div id=‘container’>
    <p id=‘inner’>I’m in the middle!</p>
  </div>
 </body>
  <script type=”text/javascript”>
   document.getElementById(“inner”).innerHTML = “Changed!”;
 </script>
</html>
Browser Demo
 dom_manipulation.html
DOM Manipulation


  Stay Tuned for the Next Talk
Javascript: What’s Different?
Javascript: What’s Different?

  • Prototypal Inheritance
  • Closures
  • Event-based Programming
Javascript: What’s Different?
           Inheritance
Javascript: What’s Different?
                    Inheritance

Traditional Inheritance
Javascript: What’s Different?
                    Inheritance

Traditional Inheritance

         Shape
Javascript: What’s Different?
                    Inheritance

Traditional Inheritance

         Shape
Javascript: What’s Different?
                    Inheritance

Traditional Inheritance

            Shape




   Square
Javascript: What’s Different?
                    Inheritance

Traditional Inheritance

            Shape




   Square
Javascript: What’s Different?
                         Inheritance

Traditional Inheritance

            Shape




   Square
                    Triangle
Javascript: What’s Different?
                         Inheritance

Traditional Inheritance          Prototypal Inheritance

            Shape




   Square
                    Triangle
Javascript: What’s Different?
                         Inheritance

Traditional Inheritance          Prototypal Inheritance

            Shape                       This
                                       Square




   Square
                    Triangle
Javascript: What’s Different?
                         Inheritance

Traditional Inheritance          Prototypal Inheritance

            Shape                       This
                                       Square




   Square
                    Triangle
Javascript: What’s Different?
                         Inheritance

Traditional Inheritance          Prototypal Inheritance

            Shape                       This
                                       Square



                                        Copy
   Square
                    Triangle           Square
Javascript: What’s Different?
                         Inheritance

Traditional Inheritance          Prototypal Inheritance

            Shape                       This
                                       Square




   Square
                    Triangle           Triangle
Javascript: What’s Different?
           Closures
Javascript: What’s Different?
           Closures
Javascript: What’s Different?
                  Closures

    var students = 5;
Javascript: What’s Different?
                  Closures

    var students = 5;
   var howManyStudents = function() {
     return students;
   }
   howManyStudents();
Javascript: What’s Different?
                  Closures

    var students = 5;
   var howManyStudents = function() {
     return students;
   }
   howManyStudents();
   ==> 5
Javascript: What’s Different?
       Event Based Programming
Javascript: What’s Different?
                 Event Based Programming
<html>
 <body>
  <h1 id=‘clickable’>Click Me</h1>
 </body>
  <script type=”text/javascript”>
   var clickFn = function() {alert(“Clicked!”);}
   document.getElementById(“clickable”).onclick = clickFn;
 </script>
</html>
Browser Demo
    click.html
Resources

• CodeAcademy (codeacademy.com)
• Douglass Crockford Videos (http://
  www.yuiblog.com/crockford/)
• Book: JavaScript, The Good Parts (Douglass
  Crockford)
Questions?
Thank You

    Kevin Ball
Co-Founder & CTO

 kball@fashioningchange.com
           @kbal11

More Related Content

PDF
Why you should be excited about ClojureScript
PDF
Polyglot and Poly-paradigm Programming for Better Agility
PDF
Javascript toolkit
PDF
What if-your-application-could-speak
PPTX
JavaScript - Intro
PDF
Intro to JavaScript
PDF
Intro to JavaScript
PDF
NodeJs Intro - JavaScript Zagreb Meetup #1
Why you should be excited about ClojureScript
Polyglot and Poly-paradigm Programming for Better Agility
Javascript toolkit
What if-your-application-could-speak
JavaScript - Intro
Intro to JavaScript
Intro to JavaScript
NodeJs Intro - JavaScript Zagreb Meetup #1

Viewers also liked (15)

PDF
Intro to JavaScript
PPTX
Intro to Javascript
PDF
Intro to javascript (4 week)
PDF
Intro to JavaScript
PDF
Javascript intro for MAH
PDF
JavaScript Intro
PPT
Javascript Intro 01
PDF
Intro to Javascript and jQuery
PDF
Basics of JavaScript
PDF
Le Wagon - Javascript for Beginners
PDF
Fundamental JavaScript [UTC, March 2014]
PDF
Introduction to JavaScript
PPT
Introduction to Javascript
PPT
Javascript
PPT
JavaScript - An Introduction
Intro to JavaScript
Intro to Javascript
Intro to javascript (4 week)
Intro to JavaScript
Javascript intro for MAH
JavaScript Intro
Javascript Intro 01
Intro to Javascript and jQuery
Basics of JavaScript
Le Wagon - Javascript for Beginners
Fundamental JavaScript [UTC, March 2014]
Introduction to JavaScript
Introduction to Javascript
Javascript
JavaScript - An Introduction
Ad

Similar to Intro to Javascript (20)

PDF
Intro to JavaScript - Thinkful LA, June 2017
PDF
Javascript - Tutorial
PDF
Thinkful - Intro to JavaScript
PPTX
Introduction to JavaScript - Web Programming
PDF
Intro to javascript (5:2)
PPTX
JavaScript Lecture notes.pptx
PPTX
CSC PPT 12.pptx
PPTX
Learning space presentation1 learn Java script
PDF
Intro to javascript (6:19)
PPTX
Java script
DOC
javscript
PPS
PPTX
Front end fundamentals session 1: javascript core
PPTX
gdscWorkShopJavascriptintroductions.pptx
PPTX
BITM3730 10-17.pptx
PDF
Client sidescripting javascript
PPTX
An introduction to javascript
PDF
Intro to javascript (6:27)
PDF
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
PDF
GDI Seattle - Intro to JavaScript Class 1
Intro to JavaScript - Thinkful LA, June 2017
Javascript - Tutorial
Thinkful - Intro to JavaScript
Introduction to JavaScript - Web Programming
Intro to javascript (5:2)
JavaScript Lecture notes.pptx
CSC PPT 12.pptx
Learning space presentation1 learn Java script
Intro to javascript (6:19)
Java script
javscript
Front end fundamentals session 1: javascript core
gdscWorkShopJavascriptintroductions.pptx
BITM3730 10-17.pptx
Client sidescripting javascript
An introduction to javascript
Intro to javascript (6:27)
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
GDI Seattle - Intro to JavaScript Class 1
Ad

More from Kevin Ball (7)

PDF
Flexible UI Components for a Multi-Framework World
PDF
Modern javascript
PDF
Npm Shrinkwrap
PDF
Understanding the Nesting Structure of the Ember.js View Layer
KEY
Underscore.js
PDF
Omniauth: Future Proof Your Authentication
KEY
Ruby 1.9 Fibers
Flexible UI Components for a Multi-Framework World
Modern javascript
Npm Shrinkwrap
Understanding the Nesting Structure of the Ember.js View Layer
Underscore.js
Omniauth: Future Proof Your Authentication
Ruby 1.9 Fibers

Recently uploaded (20)

PPTX
Spectroscopy.pptx food analysis technology
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
KodekX | Application Modernization Development
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Big Data Technologies - Introduction.pptx
PDF
Transforming Manufacturing operations through Intelligent Integrations
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Machine learning based COVID-19 study performance prediction
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
madgavkar20181017ppt McKinsey Presentation.pdf
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Advanced Soft Computing BINUS July 2025.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Spectroscopy.pptx food analysis technology
“AI and Expert System Decision Support & Business Intelligence Systems”
KodekX | Application Modernization Development
Mobile App Security Testing_ A Comprehensive Guide.pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Review of recent advances in non-invasive hemoglobin estimation
Big Data Technologies - Introduction.pptx
Transforming Manufacturing operations through Intelligent Integrations
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Machine learning based COVID-19 study performance prediction
Per capita expenditure prediction using model stacking based on satellite ima...
Understanding_Digital_Forensics_Presentation.pptx
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
madgavkar20181017ppt McKinsey Presentation.pdf
NewMind AI Monthly Chronicles - July 2025
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Advanced Soft Computing BINUS July 2025.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...

Intro to Javascript

Editor's Notes