1 / 23

CGS 3066: Web Programming and Design Fall 2019

CGS 3066: Web Programming and Design Fall 2019. Introduction to JavaScript. What is JavaScript?. A programming language that can be executed in every modern browser. “Interpreted” language Do not need to be compiled before execution.

anja
Download Presentation

CGS 3066: Web Programming and Design Fall 2019

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CGS 3066: Web Programming and DesignFall 2019 Introduction to JavaScript

  2. What is JavaScript? • A programming language that can be executed in every modern browser. • “Interpreted” language • Do not need to be compiled before execution. • Must be executed by an interpreter. Browsers come with their own JavaScriptEngine(e.g. V8 in Chrome, Gecko in Mozilla) • Written in scripts, executed at the client side(browser) • To interact with the user locally • No need to refresh the page, less traffic for server

  3. Are Javascript and Java Similar? • No! • Java is a full-fledged object-oriented programming language, popular for developing large-scale enterprise applications and web applications • Javascript is meant for use in Web programming only • No File I/O capability, networking functions • Targeted for HTML authors • Faster alternative to Java in web applications

  4. What can we do with JavaScript? • A lot • Most common uses include • Interaction with user through pop-up boxes • Access any element in the document and manipulate its look, content and attributes • Create new elements and content and apply them to the document when and if they are needed • Event handling: execute operations when certain events are detected(button clicked, key pressed, mouse hovered, page loaded, value of some HTML element changed, or simply at specific time interval)

  5. Javascript usage examples • Form validation • Survey/Questionnaire design with dynamic contents • Draw and animate graphic elements • Create User interface widgets(e.g. Search box with autocomplete, draggable and resizable objects) • JavaScript can • create an HTML element • add/modify content of an element • add attributes • change attribute values • add/modify styles • can manage event handlers

  6. How to use JavaScript • JavaScript code can be inserted into a HTML file. • In both <head> and <body> • For example <head> <title>JS Hello World</title> <scripttype="text/javascript"> window.alert("Hello World"); </script> </head> * The type attribute ("text/javascript“) is required for HTML4, optional for HTML5

  7. How to use JavaScript • JavaScript code in HTML must be inside the <script> tag. • JavaScript can be also included from external sources using <script> tag. • Just put the following into <head> or <body> tag <scriptsrc="myScript.js“ asyncdefer></script> • async tells the browser to load script from source asynchronously (in parallel with loading HTML content ) • defertells the browser to load script after the entire HTML document is loaded

  8. JavaScript Syntax • JavaScript’s basic syntax is identical to that of C++ and Java. • // begins a comment that ends at the end of the line • /* and */ may be used to contain multiline comments • For instance //This is Inline comment /*Multi- line comment*/ • <script> tags typically contain one or several Javascript ‘statements’ • statements must be separated by new lines or the semicolon(;) character

  9. JavaScript Variables Named variables are used to store data values. The “var” keyword is used to declare variables. “=” is used to set values to variables. Example: var length; length = 6; Variables may be declared and defined in a single statement: var length=6; Unlike HTML, Javascript variables are case-sensitive

  10. JavaScript Variables • JavaScript does not have typed variables. • The variable declarations do not specify a data type for the variables • May be used to associate values of any type to a variable • E.g. Integer: var num1 = 10; Floating point numbers: var PI = 3.1416; Alphabetic Character: var color = ‘c’; String of Characters: varfirstname = “David”// ‘David’ also works Booleans : var x= true; var y= false; Empty/null value:var x=null; //not NULL or Null; case-sensitive Arrays, Objects etc.

  11. JavaScript Variables • JavaScript has dynamic types. • A Variable having value of a certain may be re-assigned to contain another data type var x; //no data type var x = 5; //it is a number x = “Steven” //change to a string • You can use the JavaScript typeofoperator to find the current data type of a JavaScript variable. window.alert(typeof "John"); //prints “string”

  12. Math object var rand1to10 = Math.floor(Math.random() * 10 + 1); var three = Math.floor(Math.PI); • Methods: abs, ceil, cos, floor, log, max, min, pow, random, round, sin, sqrt, tan • Properties: E, PI

  13. Special Vaues – null and undefined var ned = null; var benson = 9; // at this point in the code, // ned is null // benson's 9 // caroline is undefined • undefined : has not been declared, does not exist • null : exists, but was specifically assigned an empty or null value

  14. Special Vaues – null and undefined var ned = null; var benson = 9; // at this point in the code, // ned is null // benson's 9 // caroline is undefined • undefined : has not been declared, does not exist • null : exists, but was specifically assigned an empty or null value

  15. JavaScript Operators Arithmetic: +, -, *, /, %, ++, -- https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Arithmetic_Operators Assignment: =, +=, -=, *=, /=, %= etc. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Assignment_Operators Relational/Comparison: <, >, <=, >=, ==,===, != https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Comparison_Operators Logical: &&, ||, ! https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Logical_Operators

  16. String type and operations var name = “Dan King"; var fName = s.substring(0, s.indexOf(" ")); // “Dan" var len = name.length; // 8 • methods: charAt, charCodeAt, fromCharCode, indexOf, lastIndexOf, replace, split, substring, toLowerCase, toUpperCase • charAt returns a one-letter String (there is no char type) • length property (not a method as in Java) • Strings can be specified with "" or '' • concatenation with + : • 1 + 1 is 2, but "1" + 1 is "11"

  17. String Concatenation The (+) operator is used to concatenate/join the operands when at least one operand is of String type var x=“Foo”+”bar” //x becomes ”Foobar” var y=“ben”+10 //y becomes ”ben10” (+=) may also be used for concatenation, depending on the context var x=5; x+=5; //x is 10 var y=“5” y+=5//y is “55” x+=y //x is “1055”

  18. String type and operations var count = 10; var s1 = "" + count; // "10" var s2 = count + " bananas, ah ahah!"; // "10 bananas, ah ahah!" var n1 = parseInt("42 is the answer"); // 42 var n2 = parseFloat("booyah"); // NaN var firstLetter = s[0]; // fails in IE var firstLetter = s.charAt(0); // does work in IE var lastLetter = s.charAt(s.length - 1); • escape sequences behave as in Java: \' \" \& \n \t \\

  19. String Split/Join • split breaks apart a string into an array using a delimiter • can also be used with regular expressions (seen later) • join merges an array into a single string, placing a delimiter between them var s = "the quick brown fox"; var a = s.split(" "); // ["the", "quick", "brown", "fox"] a.reverse(); // ["fox", "brown", "quick", "the"] s = a.join("!"); // "fox!brown!quick!the"

  20. JavascriptInput/Output capabilities • Javascript can perform limited Input/output through pop-up boxes • To generate a pop-up box: window.alert("Hello\nworld!"); • Use ‘\n’ to enter new line inside pop-up message • To read input from pop-up: var name= window.prompt(“Enter your name”); * alert() and prompt() also works even if not preceded by “window.”

  21. JavascriptInput/Output capabilities(2) • To print some content directly to the web page, use document.write() function: document.write(“plain HTML content"); document.write("<h1>we can also write Content <br> with HTML tags</h1>"); • document.writeln() automatically adds a line at the end of string document.writeln(“HTML content with newline");

  22. JavascriptInput/Output capabilities(3) • Most current browsers provide access to the browser's debugging console. Although a non-standard feature, the console is frequently used be developers to print and inspect data in bulk • To access the console output , press F12 and click on ‘console’ • To print message to the console, use the console.log() function console.log(" press f12 or right click to Inspect Element. \n Then click Console to find this message!");

  23. Popup Boxes alert("message"); // message confirm("message"); // returns true or false prompt("message"); // returns user input stringJS

More Related