JavaScript Jamshid Hashimi Trainer, Cresco Solution http://www.jamshidhashimi.com jamshid@netlinks.af @jamshidhashimi ajamshidhashimi Afghanistan Workforce Development Program
Agenda • JS Introduction • JS How To • JS Statements • JS Comments • JS Variables • JS Data Types • JS Objects • JS Arrays
Agenda • JS JSON • JS Functions • JS Operators • JS Inspect Elements (Chrome, Firefox, IE) • JQuery • DEMO
Introduction • JavaScript is the world's most popular programming language. It is the language for HTML and the web, for servers, PCs, laptops, tablets, smart phones, and more. • A scripting language is a lightweight programming language. • JavaScript is programming code that can be inserted into HTML pages. • JavaScript inserted into HTML pages, can be executed by all modern web browsers. • JavaScript is easy to learn.
How TO • JavaScripts in HTML must be inserted between <script> and </script> tags. • JavaScript can be put in the <body> and in the <head> section of an HTML page. <script> alert("My First JavaScript"); </script> <script> document.write("<h1>This is a heading</h1>"); document.write("<p>This is a paragraph</p>"); </script>
OUTPUT • JavaScript is typically used to manipulate HTML elements. <p id="demo">My First Paragraph</p> <script> document.getElementById("demo").innerHTML=" My First JavaScript"; </script>
Statements • JavaScript is a sequence of statements to be executed by the browser. • JavaScript statements are "commands" to the browser. • The purpose of the statements is to tell the browser what to do. • JavaScript code (or just JavaScript) is a sequence of JavaScript statements. • Each statement is executed by the browser in the sequence they are written.
Statements • Semicolon ; – Semicolon separates JavaScript statements. – Normally you add a semicolon at the end of each executable statement. – Using semicolons also makes it possible to write many statements on one line. document.getElementById("demo").innerHTML=" Hello Dolly"; document.getElementById("myDIV").innerHTML= "How are you?";
Statements • JavaScript is Case Sensitive – Watch your capitalization closely when you write JavaScript statements: • A function getElementById is not the same as getElementbyID. • A variable named myVariable is not the same as MyVariable.
Statements • Block Statement • Example { statement_1; statement_2; . . . statement_n; } while (x < 10){ x++; }
Statements • Conditional Statements – if...else Statement – switch Statement if (condition) statement_1 [else statement_2] switch (expression) { case label_1: statements_1 [break;] case label_2: statements_2 [break;] ... default: statements_def [break;] }
Statements • LOOPS – for Statement – do...while Statement – while Statement – break Statement – continue Statement
Statements • Object Manipulation Statements – for...in Statement var obj = {make:"BMW", model:"2013"} function dump_props(obj, obj_name) { var result = ""; for (var i in obj) { result += obj_name + "." + i + " = " + obj[i] + "<br>"; } return result; } document.write(dump_props(obj,"obj"));
Comments • Comments will not be executed by JavaScript. • Comments can be added to explain the JavaScript, or to make the code more readable. • Single line comments start with //. • Multi line comments start with /* and end with */.
Comments // Write to a heading document.getElementById("myH1").innerHTML="Welcome to my Homepage"; /* The code below will write to a heading and to a paragraph, and will represent the start of my homepage: */ document.getElementById("myH1").innerHTML="Welcome to my Homepage"; var x=5; // declare x and assign 5 to it
Variables • JavaScript variables are "containers" for storing information. • As with algebra, JavaScript variables can be used to hold values (x=5) or expressions (z=x+y). • Variable can have short names (like x and y) or more descriptive names (age, sum, totalvolume). – Variable names must begin with a letter – Variable names can also begin with $ and _ (but we will not use it) – Variable names are case sensitive (y and Y are different variables) var money; var name;
Variables • JavaScript Data Types • Global & Local Variables var name = "Ali"; var money; money = 2000.50; var myVar = "global"; // Declare a global variable function checkscope( ) { var myVar = "local"; // Declare a local variable document.write(myVar); }
Variables • One Statement, Many Variables • Value = undefined – In computer programs, variables are often declared without a value. The value can be something that has to be calculated, or something that will be provided later, like user input. Variable declared without a value will have the value undefined. var lastname=”Ahmad", age=30, job="carpenter"; var lastname=”Mohammad", age=30, job=”Engineer"; var lastname;
Data Types • String, Number, Boolean, Array, Object, Null, Undefined. • JavaScript has dynamic types. This means that the same variable can be used as different types: var x; // Now x is undefined var x = 5; // Now x is a Number var x = ”Salih"; // Now x is a String
Data Types • JavaScript Booleans – Booleans can only have two values: true or false. • JavaScript Arrays var x=true; var y=false; var arr = new Array(); arr[0] = ”item 1"; arr[1] = ”item 2"; var arr = new Array(”item1",”item2”); var arr = [“item1", “item2"];
Data Types • JavaScript Objects – An object is delimited by curly braces. Inside the braces the object's properties are defined as name and value pairs (name : value). The properties are separated by commas: var person={firstname:”James", lastname:”Bond", id:9999}; var person={ firstname : ”James", lastname : ”Bond", id : 9999 };
Objects • JavaScript is designed on a simple object- based paradigm. "Everything" in JavaScript is an Object: a String, a Number, an Array, a Date.... • In JavaScript, an object is data, with properties and methods. – Properties are values associated with objects. – Methods are actions that objects can perform.
Objects • Accessing Object Properties • Accessing Object Methods objectName.propertyName objectName.methodName()
Objects • Objects in JavaScript, just as many other programming languages, can be compared to objects in real life. var myCar = new Object(); myCar.make = "Ford"; myCar.model = "Mustang"; myCar.year = 1969; myCar.make myCar[“make”]
Objects var myCar = {make:"BMW",model:"s2013",year:"2013"} function showProps(obj, objName) { var result = ""; for (var i in obj) { if (obj.hasOwnProperty(i)) { result += objName + "." + i + " = " + obj[i] + "n"; } } return result; } alert(showProps(myCar,"myCar"))
Arrays • The JavaScript Array global object is a constructor for arrays, which are high-level, list-like objects. • Arrays are list-like objects that come with a several built-in methods to perform traversal and mutation operations. Neither the size of a JavaScript array nor the types of its elements are fixed. Since an array's size can grow or shrink at any time, JavaScript arrays are not guaranteed to be dense.
Arrays <!DOCTYPE html> <html> <head> </head> <body> <script> var years = [1950, 1960, 1970, 1980, 1990, 2000, 2010]; console.log(years[0]); </script> </body> </html>
JSON • JSON is a subset of the object literal notation of JavaScript. Since JSON is a subset of JavaScript, it can be used in the language var myJSONObject = {"bindings": [ {"ircEvent": "PRIVMSG", "method": "newURI", "regex": "^http://.*"}, {"ircEvent": "PRIVMSG", "method": "deleteURI", "regex": "^delete.*"}, {"ircEvent": "PRIVMSG", "method": "randomURI", "regex": "^random.*"} ] }; myJSONObject.bindings[0].method // "newURI"
Functions • Function is a "subprogram" that can be called by code external (or internal in the case of recursion). Like the program itself, a function is composed of a sequence of statements called the function body. Values can be passed to a function, and the function can return a value. • Every function in JavaScript is actually a Function object.
Functions /* Declare the function 'myFunc' */ function myFunc(theObject) { theObject.brand = "Toyota"; } /* * Declare variable 'mycar'; * create and initialize a new Object; * assign reference to it to 'mycar' */ var mycar = { brand: "Honda", model: "Accord", year: 1998 }; /* Shows 'Honda' */ window.alert(mycar.brand); /* Pass object reference to the function */ myFunc(mycar); /* * Shows 'Toyota' as the value of the 'brand' property * of the object, as changed to by the function. */ window.alert(mycar.brand);
Operators • Assignment operators • Comparison operators • Arithmetic operators • Bitwise operators • Logical operators • String operators • Special operators
Operators: Assignment
Operators: Comparison
Operators: Arithmetic
Operators: Logical
JQuery • Released in January of 2006, jQuery is a cross- browser JavaScript library designed to simplify the client-side script of HTML. • Used by close to a million websites, jQuery is the most popular JavaScript library in use to date. • jQuery makes it easy to handle DOM objects, events, effects and Ajax, automatically takes care of JavaScript leaks, and has countless third-party plugins.
JQuery <head> <script src="jquery-1.9.1.min.js"></script> </head> <head> <script src=”http://ajax.googleapis.com/ajax/libs/j query/1.9.1/jquery.min.js"> </script> </head>
Demo
QUESTIONS?

JavaScript Fundamentals & JQuery

  • 1.
    JavaScript Jamshid Hashimi Trainer, CrescoSolution http://www.jamshidhashimi.com jamshid@netlinks.af @jamshidhashimi ajamshidhashimi Afghanistan Workforce Development Program
  • 2.
    Agenda • JS Introduction •JS How To • JS Statements • JS Comments • JS Variables • JS Data Types • JS Objects • JS Arrays
  • 3.
    Agenda • JS JSON •JS Functions • JS Operators • JS Inspect Elements (Chrome, Firefox, IE) • JQuery • DEMO
  • 4.
    Introduction • JavaScript isthe world's most popular programming language. It is the language for HTML and the web, for servers, PCs, laptops, tablets, smart phones, and more. • A scripting language is a lightweight programming language. • JavaScript is programming code that can be inserted into HTML pages. • JavaScript inserted into HTML pages, can be executed by all modern web browsers. • JavaScript is easy to learn.
  • 5.
    How TO • JavaScriptsin HTML must be inserted between <script> and </script> tags. • JavaScript can be put in the <body> and in the <head> section of an HTML page. <script> alert("My First JavaScript"); </script> <script> document.write("<h1>This is a heading</h1>"); document.write("<p>This is a paragraph</p>"); </script>
  • 6.
    OUTPUT • JavaScript istypically used to manipulate HTML elements. <p id="demo">My First Paragraph</p> <script> document.getElementById("demo").innerHTML=" My First JavaScript"; </script>
  • 7.
    Statements • JavaScript isa sequence of statements to be executed by the browser. • JavaScript statements are "commands" to the browser. • The purpose of the statements is to tell the browser what to do. • JavaScript code (or just JavaScript) is a sequence of JavaScript statements. • Each statement is executed by the browser in the sequence they are written.
  • 8.
    Statements • Semicolon ; –Semicolon separates JavaScript statements. – Normally you add a semicolon at the end of each executable statement. – Using semicolons also makes it possible to write many statements on one line. document.getElementById("demo").innerHTML=" Hello Dolly"; document.getElementById("myDIV").innerHTML= "How are you?";
  • 9.
    Statements • JavaScript isCase Sensitive – Watch your capitalization closely when you write JavaScript statements: • A function getElementById is not the same as getElementbyID. • A variable named myVariable is not the same as MyVariable.
  • 10.
    Statements • Block Statement •Example { statement_1; statement_2; . . . statement_n; } while (x < 10){ x++; }
  • 11.
    Statements • Conditional Statements –if...else Statement – switch Statement if (condition) statement_1 [else statement_2] switch (expression) { case label_1: statements_1 [break;] case label_2: statements_2 [break;] ... default: statements_def [break;] }
  • 12.
    Statements • LOOPS – forStatement – do...while Statement – while Statement – break Statement – continue Statement
  • 13.
    Statements • Object ManipulationStatements – for...in Statement var obj = {make:"BMW", model:"2013"} function dump_props(obj, obj_name) { var result = ""; for (var i in obj) { result += obj_name + "." + i + " = " + obj[i] + "<br>"; } return result; } document.write(dump_props(obj,"obj"));
  • 14.
    Comments • Comments willnot be executed by JavaScript. • Comments can be added to explain the JavaScript, or to make the code more readable. • Single line comments start with //. • Multi line comments start with /* and end with */.
  • 15.
    Comments // Write toa heading document.getElementById("myH1").innerHTML="Welcome to my Homepage"; /* The code below will write to a heading and to a paragraph, and will represent the start of my homepage: */ document.getElementById("myH1").innerHTML="Welcome to my Homepage"; var x=5; // declare x and assign 5 to it
  • 16.
    Variables • JavaScript variablesare "containers" for storing information. • As with algebra, JavaScript variables can be used to hold values (x=5) or expressions (z=x+y). • Variable can have short names (like x and y) or more descriptive names (age, sum, totalvolume). – Variable names must begin with a letter – Variable names can also begin with $ and _ (but we will not use it) – Variable names are case sensitive (y and Y are different variables) var money; var name;
  • 17.
    Variables • JavaScript DataTypes • Global & Local Variables var name = "Ali"; var money; money = 2000.50; var myVar = "global"; // Declare a global variable function checkscope( ) { var myVar = "local"; // Declare a local variable document.write(myVar); }
  • 18.
    Variables • One Statement,Many Variables • Value = undefined – In computer programs, variables are often declared without a value. The value can be something that has to be calculated, or something that will be provided later, like user input. Variable declared without a value will have the value undefined. var lastname=”Ahmad", age=30, job="carpenter"; var lastname=”Mohammad", age=30, job=”Engineer"; var lastname;
  • 19.
    Data Types • String,Number, Boolean, Array, Object, Null, Undefined. • JavaScript has dynamic types. This means that the same variable can be used as different types: var x; // Now x is undefined var x = 5; // Now x is a Number var x = ”Salih"; // Now x is a String
  • 20.
    Data Types • JavaScriptBooleans – Booleans can only have two values: true or false. • JavaScript Arrays var x=true; var y=false; var arr = new Array(); arr[0] = ”item 1"; arr[1] = ”item 2"; var arr = new Array(”item1",”item2”); var arr = [“item1", “item2"];
  • 21.
    Data Types • JavaScriptObjects – An object is delimited by curly braces. Inside the braces the object's properties are defined as name and value pairs (name : value). The properties are separated by commas: var person={firstname:”James", lastname:”Bond", id:9999}; var person={ firstname : ”James", lastname : ”Bond", id : 9999 };
  • 22.
    Objects • JavaScript isdesigned on a simple object- based paradigm. "Everything" in JavaScript is an Object: a String, a Number, an Array, a Date.... • In JavaScript, an object is data, with properties and methods. – Properties are values associated with objects. – Methods are actions that objects can perform.
  • 23.
    Objects • Accessing ObjectProperties • Accessing Object Methods objectName.propertyName objectName.methodName()
  • 24.
    Objects • Objects inJavaScript, just as many other programming languages, can be compared to objects in real life. var myCar = new Object(); myCar.make = "Ford"; myCar.model = "Mustang"; myCar.year = 1969; myCar.make myCar[“make”]
  • 25.
    Objects var myCar ={make:"BMW",model:"s2013",year:"2013"} function showProps(obj, objName) { var result = ""; for (var i in obj) { if (obj.hasOwnProperty(i)) { result += objName + "." + i + " = " + obj[i] + "n"; } } return result; } alert(showProps(myCar,"myCar"))
  • 26.
    Arrays • The JavaScriptArray global object is a constructor for arrays, which are high-level, list-like objects. • Arrays are list-like objects that come with a several built-in methods to perform traversal and mutation operations. Neither the size of a JavaScript array nor the types of its elements are fixed. Since an array's size can grow or shrink at any time, JavaScript arrays are not guaranteed to be dense.
  • 27.
    Arrays <!DOCTYPE html> <html> <head> </head> <body> <script> var years= [1950, 1960, 1970, 1980, 1990, 2000, 2010]; console.log(years[0]); </script> </body> </html>
  • 28.
    JSON • JSON isa subset of the object literal notation of JavaScript. Since JSON is a subset of JavaScript, it can be used in the language var myJSONObject = {"bindings": [ {"ircEvent": "PRIVMSG", "method": "newURI", "regex": "^http://.*"}, {"ircEvent": "PRIVMSG", "method": "deleteURI", "regex": "^delete.*"}, {"ircEvent": "PRIVMSG", "method": "randomURI", "regex": "^random.*"} ] }; myJSONObject.bindings[0].method // "newURI"
  • 29.
    Functions • Function isa "subprogram" that can be called by code external (or internal in the case of recursion). Like the program itself, a function is composed of a sequence of statements called the function body. Values can be passed to a function, and the function can return a value. • Every function in JavaScript is actually a Function object.
  • 30.
    Functions /* Declare thefunction 'myFunc' */ function myFunc(theObject) { theObject.brand = "Toyota"; } /* * Declare variable 'mycar'; * create and initialize a new Object; * assign reference to it to 'mycar' */ var mycar = { brand: "Honda", model: "Accord", year: 1998 }; /* Shows 'Honda' */ window.alert(mycar.brand); /* Pass object reference to the function */ myFunc(mycar); /* * Shows 'Toyota' as the value of the 'brand' property * of the object, as changed to by the function. */ window.alert(mycar.brand);
  • 31.
    Operators • Assignment operators •Comparison operators • Arithmetic operators • Bitwise operators • Logical operators • String operators • Special operators
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
    JQuery • Released inJanuary of 2006, jQuery is a cross- browser JavaScript library designed to simplify the client-side script of HTML. • Used by close to a million websites, jQuery is the most popular JavaScript library in use to date. • jQuery makes it easy to handle DOM objects, events, effects and Ajax, automatically takes care of JavaScript leaks, and has countless third-party plugins.
  • 37.
  • 38.
  • 39.