Javascript: Creating A Programmable Web Page
Javascript: Creating A Programmable Web Page
JavaScript
1
XP
Tutorial Objectives
Understand basic JavaScript syntax
Create an embedded and external script
Work with variables and data
Work with data objects and extract values
from dates
Work with expressions and operators
Create and call a JavaScript function
Work with arrays and conditional statements
Learn about program loops
2
XP
Server-Side Programs
a user must be connected to the Web
server to run the server-side script
only the programmer can create or alter
the script
the system administrator has to be
concerned about users continually
accessing the server and potentially
overloading the system
3
XP
Client-Side Programs
solve many of the problems associated with
server-side scripts
can be tested locally without first uploading
it to a Web server
are likely to be more responsive to the user
can never completely replace server-side
scripts
4
XP
Introduction to JavaScript
JavaScript is an interpreted programming or
script language from Netscape.
JavaScript is used in Web site development to
such things as:
automatically change a formatted date on a
Web page
cause a linked-to-page to appear in a popup
window
cause text or a graphic image to change
during a mouse rollover
5
XP
6
XP
ECMAScript
The responsibility for the development of a
scripting standard has been transferred to an
international body called the European
Computer Manufacturers Association (ECMA).
The standard developed by the ECMA is
called ECMAScript, though browsers still refer
to it as JavaScript.
The latest version is ECMA-262, which is
supported by the major browsers.
7
XP
8
Example of Web Site using XP
JavaScript
9
XP
11
XP
Comments
The syntax for a single-line comment is:
// comment text
The syntax of a multi-line comment is:
/*
comment text covering several lines
*/
13
XP
15
XP
16
XP
Types of Variables
JavaScript supports four different types of
variables:
numeric variables can be a number, such as
13, 22.5, or -3.14159
string variables is any group of characters,
such as “Hello” or “Happy Holidays!”
Boolean variables are variables that accept one
of two values, either true or false
null variables is a variable that has no value at
all
18
XP
Declaring a Variable
Before you can use a variable in your
program, you need to declare a variable
using the var command or by assigning the
variable a value.
Any of the following commands is a
legitimate way of creating a variable named
“Month”:
var Month;
var Month = “December”;
Month = “December”;
19
XP
DayValue = DateObject.getDate()
21
XP
22
XP
23
Working with Expressions XP
and Operators
Expressions are JavaScript commands that
assign values to variables.
Expressions are created using variables,
values, and operators.
The + operator performs the action of
adding or combining two elements. For
example,
var ThisMonth = Today.getMonth()+1;
24
XP
Operators
Binary operators work on two elements in an
expression.
Unary operators work on only one variable.
unary operators include: the increment (+
+), decrement (--), and negation (-)
operators.
An increment operator is used to increase the
value of the x variable by one.
x = 100;
y = x++;
26
XP
Operators
The decrement operator reduces the value
of a variable by 1.
x = 100;
y = x--;
The negation operator changes the sign of
a variable:
x = -100;
y = -x;
27
XP
Assignment Operators
Expressions assign values using assignment
operators. “=” is the most common one.
Additional includes the += operator
The following create the same results:
x = x + y;
x += y
Either of the following increase the value of
the x variable by 2:
x = x + 2;
x += 2
28
Assignment Operators
The Math Object & Math XP
Methods
Another way of performing a calculation is to
use the JavaScript built-in Math methods.
These methods are applied to an object called
the Math object.
The syntax for applying a Math method is:
value = Math.method(variable);
For example,
AbsValue = Math.abs(NumVar);
30
XP
32
XP
33
Performing an Action with a XP
Function
The following function displays a message with the
current date:
function ShowDate(date) {
document.write(“Today is” + date + “<br>”);
}
there is one line in the function’s command
block, which displays the current date along
with a text string
34
Performing an Action with a XP
Function
To call the ShowDate function, enter:
var Today = “3/9/2006”;
ShowDate(Today);
the first command creates a variable named
“Today” and assigns it the text string,
“3/9/2006”
the second command runs the ShowDate
function, using the value of the Today variable
as a parameter
result is “Today is 3/9/2006”
35
Returning a Value from a XP
Function
To use a function to calculate a value use the
return command along with a variable or value.
function Area(Width, Length) {
var Size = Width*Length;
return Size;
}
the Area function calculates the area of a
rectangular region and places the value in a
variable named “Size”
the value of the Size variable is returned by
the function
36
Placing a Function XP
in an HTML File
The function definition must be placed
before the command that calls the function.
One convention is to place all of the
function definitions in the <head> section.
A function is executed only when called by
another JavaScript command.
It’s common practice for JavaScript
programmers to create libraries of functions
located in external files.
37
document.write("Today is "+ThisMonth+"/"+
ThisDay+"/"+ThisYear+"<br />");
document.write("Only "+DaysLeft+
" days until Christmas");
<head>
<script src="library.js" type="text/javascript">
</script>
</head>
<script type="text/javascript">
var Today=new Date("October 15, 2006");
var ThisDay=Today.getDate();
var ThisMonth=Today.getMonth()+1;
var ThisYear=Today.getFullYear();
var DaysLeft=XmasDays(Today);
</script>
document.write("Today is "+ThisMonth+"/"+
ThisDay+"/"+ThisYear+"<br />");
document.write("Only "+DaysLeft+
" days until Christmas");
library.js
function XmasDays(CheckDay) {
var XYear=CheckDay.getFullYear();
var XDay=new Date("December, 25, 2006");
XDay.setFullYear(XYear);
var DayCount=(XDay-CheckDay) /(1000*60*60*24);
DayCount=Math.round(DayCount);
return DayCount;
}
XP
41
Working with Conditional XP
Statements
if (condition) {
JavaScript Commands
}
condition is an expression that is either true
or false
if the condition is true, the JavaScript
Commands in the command block are
executed
if the condition is not true, then no action is
taken
42
Comparison, Logical, and XP
Conditional Operators
To create a condition, you need one of three types of
operators:
a comparison operator compares the value of
one element with that of another, which creates a
Boolean expression that is either true or false
a logical operator connects two or more Boolean
expressions
a conditional operator tests whether a specific
condition is true and returns one value if the
condition is true and a different value if the
condition is false
43
An Example of XP
Boolean Expressions
x < 100;
if x is less than 100, this expression returns
the value true; however, if x is 100 or
greater, the expression is false
y == 20;
the y variable must have an exact value of
20 for the expression to be true
comparison operator uses a double equal
sign (==)
44
XP
Comparison Operators
45
XP
A Logical Operator
The logical operator && returns a value of true
only if all of the Boolean expressions are true.
46
XP
A Conditional Operator
tests whether a specific condition is true and returns
one value if the condition is true and a different
value if the condition is false.
Message = (mail == “Yes”) ? “You have
mail”: “No mail”;
tests whether the mail variable is equal to the
value “Yes”
if it is, the Message variable has the value
“You have mail”;
otherwise, the Message variable has the
value “No mail”.
47
XP
48
if...else Conditional Statement
document.write("Today is " + ThisMonth +
"/“+ThisDay+"/"+ThisYear+"<br />");
if (DaysLeft > 0) {
document.write("Only "+DaysLeft+
" days until Christmas");
} else {
document.write("Happy Holidays from
Nroth Pole Novelties");
}
XP
Using Arrays
An array is an ordered collection of values
referenced by a single variable name.
The syntax for creating an array variable is:
var variable = new Array(size);
variable is the name of the array variable
size is the number of elements in the array
(optional)
To populate the array with values, use:
variable[i]=value;
where i is the ith item of the array. The 1st item
has an index value of 0.
50
XP
Using Arrays
To create and populate the array in a single
statement, use:
var variable = new Array(values);
values are the array elements enclosed in
quotes and separated by commas
var MonthTxt=new Array(“”, “January”,
“February”, “March”, “April”, “May”, “June”,
“July”, “August”, “September”, “October”,
“November”, “December”);
January will have an index value of “1”.
51
<script type="text/javascript">
var Today=new Date();
var ThisDay=Today.getDate();
var ThisMonth=Today.getMonth()+1;
var ThisYear=Today.getFullYear();
var DaysLeft=XmasDays(Today);
var MonthTxt = new Array("", "January", "February", "March",
"April", "May", "June", "July", "August", "September",
"October","November", "December");
document.write("Today is "+MonthTxt[ThisMonth]+" " +
ThisDay+", "+ThisYear+"<br />");
if (DaysLeft > 0) {
document.write("Only "+DaysLeft+" days until Christmas");
} else {
document.write("Happy Holidays from North Pole
Novelties");
}
</script>
Creating the MonthText Function in library2.js
function MonthTxt(MonthNumber) {
var Month=new Array();
Month[0]="";
Month[1]="January";
Month[2]="February";
Month[3]="March";
Month[4]="April";
Month[5]="May";
Month[6]="June";
Month[7]="July";
Month[8]="August";
Month[9]="September";
Month[10]="October";
Month[11]="November";
Month[12]="December";
return Month[MonthNumber];
}
Calling the MonthTxt Function
use the ThisMonth variable
to call the MonthTxt function
and then stores the result in
a new variable named “MonthName”
<head>
<script src="library2.js"
type="text/javascript"></script>
</head>
var MonthName=MonthTxt(ThisMonth);
XP
55
XP
56
XP
57
Specifying Counter Values in a For Loop
XP
61