KEMBAR78
Week 6 java script loops | PPTX
Speaking in Code




Intro to JavaScript
Loops!



Brian Lee

Professor Liel Leibovitz
Speaking in Code


Review – Functions

• Easy way to reuse code

• Define a set of statements through one variable

  var divideByThree = function (number) {
       var val = number / 3;
       console.log(val);
  };
Speaking in Code


Review – Functions: Name

• The name of the function that will execute
  var divideByThree = function (number) {
       var val = number / 3;
       console.log(val);
  };

• Run the function by calling its name
  divideByThree(9);
Speaking in Code


Review – Functions: Parameters

• Parameters are passed in for the function to use

• Similar to a variable in math
   f(x) = x2 + 2


• Calling function with x = 3

   f(3) = 32 + 2
   >> 11
Speaking in Code


Review – Functions: Parameters

• In JavaScript passing in 3:          myFunc(3);

   var myFunc = function (number) {
       var val = Math.pow(number, 2) + 2;
       console.log(val);
   };

   var myFunc = function (3) {
       var val = Math.pow(3, 2) + 2;
       console.log(val);
   };
Speaking in Code


Review – Functions: Return Values

• What good are functions if all you do is print

• A functions return value is similar to a variable

   var addThree = function (number) {
        return number + 3;
   };

   var count = addThree(4);
   console.log(count)
   >> 7
Speaking in Code


Review – Functions: Return Values

• You can assign to a variable or use it right away


   if(addThree(4) > 10) {
        console.log(“We’re over 10!”);
   } else {
        console.log(addThree(4) + “ is not over 10”);
   }
   >> “7 is not over 10”
Speaking in Code


Review – Functions: Scope (Local)

• Where you define your variables matter

• Variables defined inside a function ONLY exist there

  var multiplyThree = function (number) {
      var multiplier = 3;
      return multiplier * number;
  };

  console.log(multiplier)
  >> multiplier is not defined
Speaking in Code


Review – Functions: Scope (Global)

• Where you define your variables matter

• Variables defined outside a function exist globally
   var multiplier = 3;
   var multiplyThree = function (number) {
       return multiplier * number;
   };

   console.log(multiplier)
   >> 3
Speaking in Code


Functions in other languages

• JavaScript
  var square = function (number) {
       return number * number;
  };


• Ruby (method)
  def square(number)
       return number * number
  end
Speaking in Code


Intro: Loops

• Execute same line(s) of code over and over

• Fundamental concept in programming

• Can be trickier with JavaScript
Speaking in Code


Intro: For Loops
• Basic Syntax
   for(var i = 0; i < 10; i++) {
        console.log(i);
   }

• Initialization: define variable useful to loop
• Conditional: keep looping while this is true
   – is “i” currently less than 10?

• Increment: executed at the end of the loop
Speaking in Code


Intro: Loop Mechanics
• In what order does this loop think?
   for(var i = 0; i < 10; i++) {
        console.log(i);
   }

1. Initialization
2. Check Conditional: Stop loop if false
3. Run Code
4. Run Increment: i++              i=i+1
5. Step 2
Speaking in Code


Infinite Loops
• Loops with no exit strategy

• Will continue to execute until crashing
Speaking in Code


Infinite Loops

• Why would this loop not work?

  for(var i = 0; i < 10; i--) {
       console.log(i);
  }`
Speaking in Code


Infinite Loops

• Why would this loop not work?

  for(var i = 0; i < 10; i--) {
       console.log(i);
  }`

  >> -1
  >> -2
  >> -3
  >> -4
  …
  >> -467389146129
Speaking in Code


Arrays
Speaking in Code


Arrays

• Collection of items

• Like a box (even looks like it)
   []


• Each item has a designated spot

   var doughnuts= [   ,   ,   ,     ]
Speaking in Code


Arrays: Accessing Elements

• Elements: items in arrays

• Index: location of element in array
   – Starts from 0 not 1

  var doughnuts= *‘Boston Creme’, ‘Glazed’, ‘Old Fashioned’ +

• How to access the value “Boston Creme”
Speaking in Code


Arrays: Accessing Elements

• Elements: items in arrays

• Index: location of element in array
   – Starts from 0 not 1

  var doughnuts= *‘Boston Creme’, ‘Glazed’, ‘Old Fashioned’ +
                          0           1            2
• How to access the value “Boston Creme”
  doughnuts[0]
Speaking in Code


Loops and Arrays

• Use loops to write less code
  var doughnuts = *‘Boston Creme’, ‘Glazed’, ‘Old Fashioned’ ]
  for(var i = 0; i < doughnuts.length; i++) {
       console.log(“This box has “ + doughnuts*i])
  }


  >> “This box has Boston Crème”
  >> “This box has Glazed”
  >> “This box has Old Fashioned”
Speaking in Code


Try it yourself! 

http://bit.ly/jsloops

http://jsbin.com
Speaking in Code


Real World Example

• Facebook:
  – Ever wanted to select all friends when sending out invites?

  var elms = document.getElementsByName("checkableitems[]");
  for (i = 0; i < elms.length; i++) {
       if (elms[i].type === "checkbox”) ,
             elms[i].click();
       }
  }

Week 6 java script loops

  • 1.
    Speaking in Code Introto JavaScript Loops! Brian Lee Professor Liel Leibovitz
  • 2.
    Speaking in Code Review– Functions • Easy way to reuse code • Define a set of statements through one variable var divideByThree = function (number) { var val = number / 3; console.log(val); };
  • 3.
    Speaking in Code Review– Functions: Name • The name of the function that will execute var divideByThree = function (number) { var val = number / 3; console.log(val); }; • Run the function by calling its name divideByThree(9);
  • 4.
    Speaking in Code Review– Functions: Parameters • Parameters are passed in for the function to use • Similar to a variable in math f(x) = x2 + 2 • Calling function with x = 3 f(3) = 32 + 2 >> 11
  • 5.
    Speaking in Code Review– Functions: Parameters • In JavaScript passing in 3: myFunc(3); var myFunc = function (number) { var val = Math.pow(number, 2) + 2; console.log(val); }; var myFunc = function (3) { var val = Math.pow(3, 2) + 2; console.log(val); };
  • 6.
    Speaking in Code Review– Functions: Return Values • What good are functions if all you do is print • A functions return value is similar to a variable var addThree = function (number) { return number + 3; }; var count = addThree(4); console.log(count) >> 7
  • 7.
    Speaking in Code Review– Functions: Return Values • You can assign to a variable or use it right away if(addThree(4) > 10) { console.log(“We’re over 10!”); } else { console.log(addThree(4) + “ is not over 10”); } >> “7 is not over 10”
  • 8.
    Speaking in Code Review– Functions: Scope (Local) • Where you define your variables matter • Variables defined inside a function ONLY exist there var multiplyThree = function (number) { var multiplier = 3; return multiplier * number; }; console.log(multiplier) >> multiplier is not defined
  • 9.
    Speaking in Code Review– Functions: Scope (Global) • Where you define your variables matter • Variables defined outside a function exist globally var multiplier = 3; var multiplyThree = function (number) { return multiplier * number; }; console.log(multiplier) >> 3
  • 10.
    Speaking in Code Functionsin other languages • JavaScript var square = function (number) { return number * number; }; • Ruby (method) def square(number) return number * number end
  • 11.
    Speaking in Code Intro:Loops • Execute same line(s) of code over and over • Fundamental concept in programming • Can be trickier with JavaScript
  • 12.
    Speaking in Code Intro:For Loops • Basic Syntax for(var i = 0; i < 10; i++) { console.log(i); } • Initialization: define variable useful to loop • Conditional: keep looping while this is true – is “i” currently less than 10? • Increment: executed at the end of the loop
  • 13.
    Speaking in Code Intro:Loop Mechanics • In what order does this loop think? for(var i = 0; i < 10; i++) { console.log(i); } 1. Initialization 2. Check Conditional: Stop loop if false 3. Run Code 4. Run Increment: i++ i=i+1 5. Step 2
  • 14.
    Speaking in Code InfiniteLoops • Loops with no exit strategy • Will continue to execute until crashing
  • 15.
    Speaking in Code InfiniteLoops • Why would this loop not work? for(var i = 0; i < 10; i--) { console.log(i); }`
  • 16.
    Speaking in Code InfiniteLoops • Why would this loop not work? for(var i = 0; i < 10; i--) { console.log(i); }` >> -1 >> -2 >> -3 >> -4 … >> -467389146129
  • 17.
  • 18.
    Speaking in Code Arrays •Collection of items • Like a box (even looks like it) [] • Each item has a designated spot var doughnuts= [ , , , ]
  • 19.
    Speaking in Code Arrays:Accessing Elements • Elements: items in arrays • Index: location of element in array – Starts from 0 not 1 var doughnuts= *‘Boston Creme’, ‘Glazed’, ‘Old Fashioned’ + • How to access the value “Boston Creme”
  • 20.
    Speaking in Code Arrays:Accessing Elements • Elements: items in arrays • Index: location of element in array – Starts from 0 not 1 var doughnuts= *‘Boston Creme’, ‘Glazed’, ‘Old Fashioned’ + 0 1 2 • How to access the value “Boston Creme” doughnuts[0]
  • 21.
    Speaking in Code Loopsand Arrays • Use loops to write less code var doughnuts = *‘Boston Creme’, ‘Glazed’, ‘Old Fashioned’ ] for(var i = 0; i < doughnuts.length; i++) { console.log(“This box has “ + doughnuts*i]) } >> “This box has Boston Crème” >> “This box has Glazed” >> “This box has Old Fashioned”
  • 22.
    Speaking in Code Tryit yourself!  http://bit.ly/jsloops http://jsbin.com
  • 23.
    Speaking in Code RealWorld Example • Facebook: – Ever wanted to select all friends when sending out invites? var elms = document.getElementsByName("checkableitems[]"); for (i = 0; i < elms.length; i++) { if (elms[i].type === "checkbox”) , elms[i].click(); } }

Editor's Notes

  • #3 Example: brush teethDon’t have to list out what you do everytime
  • #24 var elms = document.getElementsByName(&quot;checkableitems[]&quot;); for (i = 0; i &lt; elms.length; i++) { if (elms[i].type === &quot;checkbox&quot;) { elms[i].click(); } }