0% found this document useful (0 votes)
10 views2 pages

JavaScript Basics: Overview & Concepts

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views2 pages

JavaScript Basics: Overview & Concepts

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Lecture 9The Basics of JavaScript

2. Overview • Overview of JavaScript • Object Orientation • Syntactic Characteristics •


Primitives, Operations and Expressions • Math, Number, String and Date objects • Screen
Output • Control Statements, Arrays and Functions
3. Origins of JavaScript • Originally developed by Netscape, as LiveScript • Became a
joint venture of Netscape and Sun in 1995, renamed JavaScript • Now standardized by
the European Computer Manufacturers Association as ECMA-262 • An HTML-embedded
scripting language • We’ll call collections of JavaScript code scripts, not programs
4. JavaScript and Java • JavaScript and Java are only related through syntax • JavaScript
is dynamically typed • JavaScript’s support for objects is very different • JavaScript is
interpreted • Source code is embedded inside HTML doc, there is no compilation
5. Uses of JavaScript • Transfer of some load from server to client • User interactions
through forms • Events easily detected with JavaScript • E.g. validate user input • The
Document Object Model makes it possible to create dynamic HTML documents with
JavaScript
6. JavaScript Execution • JavaScript scripts are executed entirely by the browser • Once
downloaded there is no exchange of information with the server • NB JavaScript
programs can issue HTTP requests and load other pages • JavaScript scripts do not
require the Java VM to be loaded • Thus JavaScript scripts tend to be fast
7. Object Orientation • JavaScript is NOT an object-oriented programming language •
Rather object-based • Does not support class-based inheritance • Cannot support
polymorphism • JavaScript objects are collections of properties, which are like the
members of classes in Java • Data and method properties • JavaScript has primitives for
simple types • The root object in JavaScript is Object – all objects are derived from Object
8. Embedding in HTML docs • Either directly, as in <script type = “text/javascript”> --
JavaScript script – </script> • Or indirectly, as a file specified in the src attribute of
<script>, as in <script type = “text/javascript” src = “[Link]”> </script>
9. Syntactic Characteristics • Identifier form: begin with a letter or underscore, followed
by any number of letters, underscores, and digits • Case sensitive • 25 reserved words,
plus future reserved words • Comments: both // and /* … */ • Scripts are usually hidden
from browsers that do not include JavaScript interpreters by putting them in special
comments <!-- -- JavaScript script – //--> • Semicolons can be a problem • They are
“somewhat” optional • Problem: When the end of the line can be the end of a statement
– JavaScript puts a semicolon there
10. Primitives • All primitive values have one of the five types: Number, String, Boolean,
Undefined, or Null • Number, String, and Boolean have wrapper objects • In the cases of
Number and String, primitive values and objects are coerced back and forth so that
primitive values can be treated essentially as if they were objects
11. Primitives • All numeric values are stored in double-precision floating point • String
literals are delimited by either ' or " • Boolean values are true and false • The only Null
value is null • The only Undefined value is undefined
12. Declaring Variables • JavaScript is dynamically typed – any variable can be used for
anything (primitive value or reference to any object) • The interpreter determines the
type of a particular occurrence of a variable • Variables can be either implicitly or
explicitly declared var sum = 0, today = "Monday", flag = false;
13. Numeric Operators
14. Math and Number Objects • The Math Object provides floor, round, max, min, trig
functions, etc. • e.g., [Link](x) • The Number Object has some useful properties
15. String Object • The number of characters in a string is stored in the length property var
str = “George”; var len = [Link]; • Common methods:
16. Date Object • Create one with the Date constructor (no params) var today = new
Date(); • Local time methods of Date: • toLocaleString – returns a string of the date •
getDate – returns the day of the month • getMonth – returns the month of the year (0 –
11) • getDay – returns the day of the week (0 – 6) • getFullYear – returns the year •
getTime – returns the number of milliseconds since January 1, 1970 • getHours – returns
the hour (0 – 23) • getMinutes – returns the minutes (0 – 59) • getMilliseconds – returns
the millisecond (0 – 999)
17. Screen Output • JavaScript models the HTML document with the Document object •
The model for the browser display window is the Window object • The Window object has
two properties, document and window, which refer to the Document and Window objects,
respectively • The Document object has a method, write, which dynamically creates
content • The parameter is a string, often concatenated from parts, some of which are
variables [Link]("Answer: “, result, "<br>"); • The parameter is sent to the
browser, so it can be anything that can appear in an HTML document (any HTML tags)
18. Screen Output • The Window object has three methods for creating dialog boxes • Alert
alert(“The sum is:” + sum + ”\n"); • Parameter is plain text, not HTML • Opens a dialog
box which displays the parameter string and an OK button • It waits for the user to press
the OK button
19. Screen Output • Confirm var question = confirm("Do you want to continue this
download?"); • Opens a dialog box and displays the parameter and two buttons, OK and
Cancel • Returns a Boolean value, depending on which button was pressed (it waits for
one)
20. Screen Output • Prompt prompt("What is your name?", “ "); • Opens a dialog box and
displays its string parameter, along with a text box and two buttons, OK and Cancel •
The second parameter is for a default response if the user presses OK without typing a
response in the text box (waits for OK) [Link]
21. Conditionals • Selection statements – “if” and “if…else“ if (a > b) [Link](“a is
greater than b <br>”); else { a = b; [Link](“a was not greater than b, now they
are equal <br>”); } • The switch statement
[Link]
22. Loops • while(control_expression) statement or compound stmt • for(init; control;
increment) statement or cmpnd stmt • init can have declarations, but the scope of such
variables is the whole script • [Link] •
dostatement or compound while(control_expression)
23. Arrays • Array elements can be primitive values or references to other objects • Array
objects can be created in two ways, with new, or by assigning an array literal var myList
= new Array(24, "bread", true); var myList2 = new Array(24); var myList3 = [24, "bread",
true]; • Length is dynamic - the length property stores the length • length property is
writeable [Link] = 150; [Link]
24. Functions function function_name([formal_parameters]) { -- body – } • Return value is
the parameter of return • If there is no return or if return has no parameter, undefined is
returned • We place all function definitions in the head of the HTML document • Calls to
functions appear in the document body • Variables explicitly declared in a function are
local
25. Functions – parameters • Parameters are passed by value, but when a reference
variable is passed, the semantics are pass-by-reference • There is no type checking of
parameters, nor is the number of parameters checked • excess actual parameters are
ignored, excess formal parameters are set to undefined • All parameters are sent
through a property array, arguments, which has the length property
[Link]
26. Summary • Overview of JavaScript • Object Orientation • Syntactic Characteristics •
Primitives, Operations and Expressions • Math, Number, String and Date objects • Screen
Output • Control Statements, Arrays and Functions

You might also like