Skip to content

Instantly share code, notes, and snippets.

@dannyfritz
Forked from bertoort/intro_to_js.md
Last active July 17, 2017 20:46
Show Gist options
  • Select an option

  • Save dannyfritz/e81b2d3aff8dfbe94377695296e837a6 to your computer and use it in GitHub Desktop.

Select an option

Save dannyfritz/e81b2d3aff8dfbe94377695296e837a6 to your computer and use it in GitHub Desktop.

Revisions

  1. dannyfritz revised this gist Jul 11, 2016. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions intro_to_js.md
    Original file line number Diff line number Diff line change
    @@ -20,9 +20,9 @@ Write, mentally evaluate, and store the result of JS expressions

    ## Programming Languages

    > How many programming languages can we name as a class?
    > Q: How many programming languages can we name as a class?
    * What do programming languages solve?
    > Q: What do programming languages solve? A: Many things, depends on the language.
    > Q: But what is it really? A: A language written for humans to execute commands on a computer
  2. dannyfritz revised this gist Jul 11, 2016. 1 changed file with 5 additions and 5 deletions.
    10 changes: 5 additions & 5 deletions intro_to_js.md
    Original file line number Diff line number Diff line change
    @@ -66,7 +66,7 @@ of the Chrome Dev Tools.

    ### Types in JavaScript

    What are some types you can think of?
    > What are some types you can think of?
    JavaScript has 7 types:

    @@ -84,9 +84,7 @@ JavaScript has 7 types:

    ### Operators

    Knowing the types available in JavaScript,
    what are some things you would want to do
    directly with them?
    > Knowing the types available in JavaScript, what are some things you would want to do directly with them?
    #### Arithmetic

    @@ -103,7 +101,7 @@ directly with them?
    * `>`, `<`, `>=`, `<=`
    * `!=`, `!==`

    Partner up and try some of these comparison operators out. Try them on the same type, different types, etc.
    > Partner up and try some of these comparison operators out. Try them on the same type, different types, etc.
    > Show the wat video.
    @@ -120,6 +118,8 @@ Partner up and try some of these comparison operators out. Try them on the same

    > Play around with variables with a partner.
    > Have you thought about how you would name variables?
    ---

    ### Comments
  3. dannyfritz revised this gist Jul 11, 2016. 1 changed file with 9 additions and 4 deletions.
    13 changes: 9 additions & 4 deletions intro_to_js.md
    Original file line number Diff line number Diff line change
    @@ -20,21 +20,24 @@ Write, mentally evaluate, and store the result of JS expressions

    ## Programming Languages

    * How many programming languages can we name as a class?
    > How many programming languages can we name as a class?
    * What do programming languages solve?

    * Q: But what is it really?
    A: A language written for humans to execute commands on a computer
    > Q: But what is it really? A: A language written for humans to execute commands on a computer
    * Let's look at some language examples and infer things about them from
    the syntax.

    > Pair up and look at some more code examples on Rosetta Code
    ---

    ## JavaScript

    ### Why learn JavaScript (Pointed Question)
    ### Why learn JavaScript

    > Why learn JavaScript?
    * Only language natively supported by browsers
    * Popularly used on both the client and server for the web
    @@ -106,6 +109,8 @@ Partner up and try some of these comparison operators out. Try them on the same
    #### Operator Precedence

    > When is this important to know about?
    ---

    ### Variables
  4. dannyfritz revised this gist Jul 11, 2016. 1 changed file with 10 additions and 0 deletions.
    10 changes: 10 additions & 0 deletions intro_to_js.md
    Original file line number Diff line number Diff line change
    @@ -92,12 +92,18 @@ directly with them?
    * `%`
    * `++`, `--`

    > Play around with arithmetic operators with a partner.
    #### Comparison

    * `==`, `===` (strict)
    * `>`, `<`, `>=`, `<=`
    * `!=`, `!==`

    Partner up and try some of these comparison operators out. Try them on the same type, different types, etc.

    > Show the wat video.
    #### Operator Precedence

    ---
    @@ -107,13 +113,17 @@ directly with them?
    * `var`
    * `=` assignment

    > Play around with variables with a partner.
    ---

    ### Comments

    * `//`
    * `/* */`

    > Pair up and find an open source project. Find some interesting comments and discuss them.
    ---

    ## Review
  5. dannyfritz revised this gist Jul 11, 2016. No changes.
  6. dannyfritz revised this gist Jul 11, 2016. 1 changed file with 11 additions and 3 deletions.
    14 changes: 11 additions & 3 deletions intro_to_js.md
    Original file line number Diff line number Diff line change
    @@ -24,8 +24,8 @@ Write, mentally evaluate, and store the result of JS expressions

    * What do programming languages solve?

    * But what is it?
    A language written for humans to execute commands on a computer
    * Q: But what is it really?
    A: A language written for humans to execute commands on a computer

    * Let's look at some language examples and infer things about them from
    the syntax.
    @@ -34,7 +34,7 @@ Write, mentally evaluate, and store the result of JS expressions

    ## JavaScript

    ### Why learn JavaScript
    ### Why learn JavaScript (Pointed Question)

    * Only language natively supported by browsers
    * Popularly used on both the client and server for the web
    @@ -63,6 +63,10 @@ of the Chrome Dev Tools.

    ### Types in JavaScript

    What are some types you can think of?

    JavaScript has 7 types:

    * `string`
    * `number`
    * `boolean`
    @@ -77,6 +81,10 @@ of the Chrome Dev Tools.

    ### Operators

    Knowing the types available in JavaScript,
    what are some things you would want to do
    directly with them?

    #### Arithmetic

    * `+`, `-`
  7. dannyfritz revised this gist Jul 11, 2016. 1 changed file with 73 additions and 110 deletions.
    183 changes: 73 additions & 110 deletions intro_to_js.md
    Original file line number Diff line number Diff line change
    @@ -1,158 +1,121 @@
    # Intro to Programming with JavaScript

    ## Standard: Write, mentally evaluate, and store the result of JS expressions
    ## Standard

    Write, mentally evaluate, and store the result of JS expressions

    ## Objectives

    * Describe a programming language
    * List reasons for learning JavaScript
    * Run JavaScript with a REPL
    * Use the various types in JavaScript
    * See a result of an expression with `console.log`
    * Determine the type of something with `typeof`
    * Compare values with a comparison operator
    * Read/write values from/to a `var`
    * Describe what a programming language is
    * List reasons for learning JavaScript
    * Run JavaScript with a REPL
    * Use the various types in JavaScript
    * Determine the type of something with `typeof`
    * Perform math with arithmetic operators
    * Compare values with comparison operators
    * Read/write values from/to a `var`
    * Write some code that will not be interpreted with a comment

    ---

    ## Programming Languages

    ### What is it?

    * Logic
    * Tells a computer what to do
    *
    * How many programming languages can we name as a class?

    ### Why learn JavaScript?
    * What do programming languages solve?

    ----
    * But what is it?
    A language written for humans to execute commands on a computer

    * Only full stack web application language (Isomorphic)
    * Only dynamic language natively supported by the browsers
    * It is required
    * Sustained adoption
    * Low barrier to entry
    * Let's look at some language examples and infer things about them from
    the syntax.

    ---

    ## What is JavaScript?

    ----

    ## History
    ## JavaScript

    ----
    ### Why learn JavaScript

    - When was JavaScript created?
    - What is ECMAScript?
    - What is TC39?
    - How many versions of JS has there been?
    * Only language natively supported by browsers
    * Popularly used on both the client and server for the web
    * It is ubiquitous
    * Sustained adoption
    * Low barrier to entry

    ----
    ### History of JavaScript

    * Developed in 10 days in 1995 by Brendan Eich while working for Netscape.
    * ECMAScript Language Specification
    * Technical Committee 39 published the final draft of the 5th edition
    * Developed in 10 days in 1995 by Brendan Eich while working for Netscape.
    * JavaScript version history
    * TC39
    * ECMAScript and JavaScript

    ---

    ## Types in JavaScript
    ## Using JavaScript

    ----
    ### Running JavaScript in a REPL

    A must: [wat](https://www.destroyallsoftware.com/talks/wat)
    `read–eval–print loop`

    ----
    Using the
    [snippets section](https://developers.google.com/web/tools/chrome-devtools/debug/snippets/?hl=en)
    of the Chrome Dev Tools.

    ## Types in JavaScript
    * string
    * number
    * boolean
    * null
    * undefined
    * object
    ### Types in JavaScript

    ---

    # Variables
    * `string`
    * `number`
    * `boolean`
    * `null`
    * `undefined`
    * `Object`
    * `Symbol` (new in ES2015)

    * `var`
    #### `typeof`

    ---

    # Operators

    ----

    # Assignment

    * `=`
    * `+=`

    ----

    # Comparison

    * `==`
    * `===`
    * `>`
    * `>=`
    * `!`

    ----
    ### Operators

    # Arithmetic
    #### Arithmetic

    * `+`
    * `-`
    * `+`, `-`
    * `*`, `/`
    * `%`
    * `++`, `--`

    ----
    #### Comparison

    # Logical
    * `==`, `===` (strict)
    * `>`, `<`, `>=`, `<=`
    * `!=`, `!==`

    * `||`
    * `&&`
    #### Operator Precedence

    ----

    # Bitwise

    * `&`
    * `|`
    * `>>`
    * [etc.](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Bitwise_Operators)

    ----

    # Ternary

    `condition ? val1 : val2`

    ----

    `typeof`

    ----

    # Relational

    * `in`
    * `instanceof`
    ---

    ----
    ### Variables

    # Operator Precedence
    * `var`
    * `=` assignment

    ---

    # Console.log
    ### Comments

    * `//`
    * `/* */`

    ---

    ## Review

    * Why JavaScript?
    * Running JavaScript
    * Types
    * Operators
    * Console.log
    * Describe what a programming language is
    * List reasons for learning JavaScript
    * Run JavaScript with a REPL
    * Use the various types in JavaScript
    * Determine the type of something with `typeof`
    * Perform math with arithmetic operators
    * Compare values with comparison operators
    * Read/write values from/to a `var`
    * Write some code that will not be interpreted with a comment
  8. dannyfritz revised this gist Jul 10, 2016. 1 changed file with 17 additions and 16 deletions.
    33 changes: 17 additions & 16 deletions intro_to_js.md
    Original file line number Diff line number Diff line change
    @@ -1,26 +1,27 @@
    <style type="text/css">
    section, p, h1, h2, h3 {
    text-align: left;
    }
    </style>
    # Intro to Programming with JavaScript

    # Intro to JS
    ## Standard: Write, mentally evaluate, and store the result of JS expressions

    ---
    ## Objectives

    ## Write, mentally evaluate, and store the result of JS expressions
    * Describe a programming language
    * List reasons for learning JavaScript
    * Run JavaScript with a REPL
    * Use the various types in JavaScript
    * See a result of an expression with `console.log`
    * Determine the type of something with `typeof`
    * Compare values with a comparison operator
    * Read/write values from/to a `var`

    ----
    ---

    ## Success Criteria
    ## Programming Languages

    * Why JavaScript?
    * Running JavaScript
    * Types
    * Operators
    * Console.log
    ### What is it?

    ---
    * Logic
    * Tells a computer what to do
    *

    ### Why learn JavaScript?

  9. @bertoort bertoort revised this gist Apr 26, 2016. 1 changed file with 1 addition and 3 deletions.
    4 changes: 1 addition & 3 deletions intro_to_js.md
    Original file line number Diff line number Diff line change
    @@ -146,7 +146,7 @@ A must: [wat](https://www.destroyallsoftware.com/talks/wat)

    # Console.log

    ----
    ---

    ## Review

    @@ -155,5 +155,3 @@ A must: [wat](https://www.destroyallsoftware.com/talks/wat)
    * Types
    * Operators
    * Console.log

    ---
  10. @bertoort bertoort revised this gist Apr 26, 2016. 1 changed file with 5 additions and 0 deletions.
    5 changes: 5 additions & 0 deletions intro_to_js.md
    Original file line number Diff line number Diff line change
    @@ -1,3 +1,8 @@
    <style type="text/css">
    section, p, h1, h2, h3 {
    text-align: left;
    }
    </style>

    # Intro to JS

  11. @bertoort bertoort revised this gist Apr 26, 2016. 1 changed file with 149 additions and 46 deletions.
    195 changes: 149 additions & 46 deletions intro_to_js.md
    Original file line number Diff line number Diff line change
    @@ -1,51 +1,154 @@
    * Why learn JavaScript?

    * What is JavaScript?
    * History
    * TC39
    # Intro to JS

    ---

    ## Write, mentally evaluate, and store the result of JS expressions

    ----

    ## Success Criteria

    * Why JavaScript?
    * Running JavaScript
    * Types
    * Operators
    * Console.log

    ---

    ### Why learn JavaScript?

    ----

    * Only full stack web application language (Isomorphic)
    * Only dynamic language natively supported by the browsers
    * It is required
    * Sustained adoption
    * Low barrier to entry

    ---

    ## What is JavaScript?

    ----

    ## History

    ----

    - When was JavaScript created?
    - What is ECMAScript?
    - What is TC39?
    - How many versions of JS has there been?

    ----

    * Developed in 10 days in 1995 by Brendan Eich while working for Netscape.
    * ECMAScript Language Specification
    * Technical Committee 39 published the final draft of the 5th edition

    ---

    ## Types in JavaScript

    ----

    A must: [wat](https://www.destroyallsoftware.com/talks/wat)

    * Types in JavaScript
    * string
    * number
    * boolean
    * null
    * undefined
    * object

    * Variables
    * `var`

    ----

    ## Types in JavaScript
    * string
    * number
    * boolean
    * null
    * undefined
    * object

    ---

    # Variables

    * `var`

    ---

    # Operators

    ----

    # Assignment

    * `=`
    * `+=`

    ----

    # Comparison

    * `==`
    * `===`
    * `>`
    * `>=`
    * `!`

    ----

    # Arithmetic

    * `+`
    * `-`

    ----

    # Logical

    * `||`
    * `&&`

    ----

    # Bitwise

    * `&`
    * `|`
    * `>>`
    * [etc.](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Bitwise_Operators)

    ----

    # Ternary

    `condition ? val1 : val2`

    ----

    `typeof`

    ----

    # Relational

    * `in`
    * `instanceof`

    ----

    # Operator Precedence

    ---

    # Console.log

    ----

    ## Review

    * Why JavaScript?
    * Running JavaScript
    * Types
    * Operators
    * Assignment
    * `=`
    * `+=`
    * etc.
    * Comparison
    * `==`
    * `===`
    * `>`
    * `>=`
    * etc.
    * Arithmetic
    * `+`
    * `-`
    * etc.
    * Logical
    * `||`
    * `&&`
    * etc.
    * Bitwise
    * `&`
    * `|`
    * `>>`
    * etc.
    * Ternary
    * `condition ? val1 : val2`
    * `typeof`
    * Relational
    * `in`
    * `instanceof`

    * Operator Precedence
    * Console.log

    ---
  12. @bertoort bertoort renamed this gist Apr 26, 2016. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  13. @bertoort bertoort created this gist Apr 26, 2016.
    51 changes: 51 additions & 0 deletions Intro to JS
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,51 @@
    * Why learn JavaScript?

    * What is JavaScript?
    * History
    * TC39

    A must: [wat](https://www.destroyallsoftware.com/talks/wat)

    * Types in JavaScript
    * string
    * number
    * boolean
    * null
    * undefined
    * object

    * Variables
    * `var`

    * Operators
    * Assignment
    * `=`
    * `+=`
    * etc.
    * Comparison
    * `==`
    * `===`
    * `>`
    * `>=`
    * etc.
    * Arithmetic
    * `+`
    * `-`
    * etc.
    * Logical
    * `||`
    * `&&`
    * etc.
    * Bitwise
    * `&`
    * `|`
    * `>>`
    * etc.
    * Ternary
    * `condition ? val1 : val2`
    * `typeof`
    * Relational
    * `in`
    * `instanceof`

    * Operator Precedence