XP
1
JavaScript
Creating a Programmable Web Page
XP
2
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
XP
3
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
XP
4
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
XP
5
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
XP
6
Java vs. JavaScript
 Requires the JDK to
create the applet
 Requires a Java virtual
machine to run the applet
 Applet files are distinct
from the XHTML code
 Source code is hidden
from the user
 Programs must be saved
as separate files and
compiled before they can
be run
 Programs run on the
server side
 Requires a text editor
 Required a browser that
can interpret JavaScript
code
 JavaScript can be placed
within HTML and XHTML
 Source code is made
accessible to the user
 Programs cannot write
content to the hard disk
 Programs run on the
client side
XP
7
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.
XP
8
Other Client-side Languages
 Internet Explorer supports JScript.
 JScript is identical to JavaScript, but there
are some JavaScript commands not
supported in JScript, and vice versa.
 Other client-side programming languages
are also available to Web page designers,
such as the Internet Explorer scripting
language, VBScript.
XP
9
Example of Web Site using
JavaScript
XP
10
Writing a JavaScript Program
 The Web browser runs a JavaScript program
when the Web page is first loaded, or in
response to an event.
 JavaScript programs can either be placed
directly into the HTML file or they can be saved
in external files.
 placing a program in an external file allows
you to hide the program code from the user
 source code placed directly in the HTML file
can be viewed by anyone
XP
11
Writing a JavaScript Program
 A JavaScript program can be placed anywhere
within the HTML file.
 Many programmers favor placing their
programs between <head> tags in order to
separate the programming code from the Web
page content and layout.
 Some programmers prefer placing programs
within the body of the Web page at the
location where the program output is
generated and displayed.
XP
12
Using the <script> Tag
 To embed a client-side script in a Web
page, use the element:
<script type=“text/javascript” >
script commands and comments
</script>
 To access an external script, use:
<script src=“url”
type=“text/javascript”>
script commands and comments
</script>
XP
13
Comments
 The syntax for a single-line comment is:
// comment text
 The syntax of a multi-line comment is:
/*
comment text covering several lines
*/
XP
14
Hiding Script from Older Browsers
 You can hide the script from these browsers
using comment tags:
<script type=“text/javascript”>
<!-- Hide from non-JavaScript browsers
JavaScript commands
// Stop hiding from older browsers -->
</script>
 When a Web browser that doesn’t support
scripts encounters this code, it ignores the
<script> tag.
XP
15
Writing Output to a Web Page
 JavaScript provides two methods to write text
to a Web page:
 document.write(“text”);
 document.writeln(“text”);
 The document.writeln() method differs from
document.write() in that it attaches a carriage
return to the end of each text string sent to the
Web page.
document.write("<h3>News Flash!</h3><br />");
XP
16
JavaScript Syntax Issues
 JavaScript commands and names are case-
sensitive.
 JavaScript command lines end with a
semicolon to separate it from the next
command line in the program.
 in some situations, the semicolon is
optional
 semicolons are useful to make your code
easier to follow and interpret
XP
17
Working with Variables & Data
 A variable is a named element in a program
that stores information. The following
restrictions apply to variable names:
 the first character must be either a letter or
an underscore character ( _ )
 the remaining characters can be letters,
numbers, or underscore characters
 variable names cannot contain spaces
 Variable names are case-sensitive.
 document.write(Year);
XP
18
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
XP
19
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”;
XP
20
Working with Dates
 There are two ways to create a date object:
variable = new Date(“month day, year,
hours:minutes: seconds”)
variable = new Date(year, month, day, hours,
minutes, seconds”)
 variable is the name of the variable that
contains the date information
 month, day, year, hours, minutes, and
seconds indicate the date and time
var Today=new Date(“October 15, 2006”);
var Today=new Date(2006, 9, 15);
XP
21
Retrieving the Day & Time Values
 JavaScript stores dates and times as the
number of milliseconds since 6 p.m on
12/31/69.
 Use built in JavaScript date methods to do
calculations.
 If you want the ThisDay variable to store the
day of the month. To get that information,
apply the getDate() method.
DayValue = DateObject.getDate()
XP
22
Retrieving the Month Value
 The getMonth() method extracts the
value of the current month.
 JavaScript starts counting months with 0
for January, you may want to add 1 to the
month number returned by the getMonth()
method.
 ThisMonth = Today.getMonth()+1;
XP
23
Retrieving the Year Value
 The getFullYear() method extracts the
year value from the date variable.
 ThisYear = Today.getFullYear();
XP
24
Working with Expressions
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;
Java script
XP
26
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++;
XP
27
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;
XP
28
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
Assignment Operators
XP
30
The Math Object & Math
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);
Java script
XP
32
Creating JavaScript Functions
function function_name(parameters) {
JavaScript commands
}
 parameters are the values sent to the
function (note: not all functions require
parameters)
 { and } are used to mark the beginning and
end of the commands in the function.
XP
33
Creating JavaScript Functions
 Function names are case-sensitive.
 The function name must begin with a letter or
underscore ( _ ) and cannot contain any
spaces.
 There is no limit to the number of function
parameters that a function may contain.
 The parameters must be placed within
parentheses, following the function name, and
the parameters must be separated by
commas.
XP
34
Performing an Action with a
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
XP
35
Performing an Action with a
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”
XP
36
Returning a Value from a
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
XP
37
Placing a Function
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.
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");
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;
}
library.js
XP
41
Setting Date Values
JavaScript functions that allow
you to set or change the values of date objects
XP
42
Working with Conditional
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
XP
43
Comparison, Logical, and
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
XP
44
An Example of
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 (==)
XP
45
Comparison Operators
XP
46
A Logical Operator
 The logical operator && returns a value of true
only if all of the Boolean expressions are true.
XP
47
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”.
XP
48
Using an If...Else Statement
if (condition) {
JavaScript Commands if true
} else
JavaScript Commands if false
}
 condition is an expression that is either true
or false, and one set of commands is run if
the expression is true, and another is run if
the expression is false
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");
}
if...else Conditional Statement
XP
50
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.
XP
51
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”.
<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>
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];
}
Creating the MonthText Function in library2.js
<head>
<script src="library2.js"
type="text/javascript"></script>
</head>
var MonthName=MonthTxt(ThisMonth);
Calling the MonthTxt Function
use the ThisMonth variable
to call the MonthTxt function
and then stores the result in
a new variable named “MonthName”
XP
55
Working with Program Loops
 A program loop is a set of instructions
that is executed repeatedly.
 There are two types of loops:
 loops that repeat a set number of
times before quitting
 loops that repeat as long as a certain
condition is met
XP
56
The For Loop
 The For loop allows you to create a group of
commands to be executed a set number of
times through the use of a counter that tracks
the number of times the command block has
been run.
 Set an initial value for the counter, and each
time the command block is executed, the
counter changes in value.
 When the counter reaches a value above or
below a certain stopping value, the loop ends.
XP
57
The For Loop Continued
for (start; condition; update) {
JavaScript Commands
}
 start is the starting value of the counter
 condition is a Boolean expression that must
be true for the loop to continue
 update specifies how the counter changes in
value each time the command block is
executed
Java script
Java script
Specifying Counter Values in a For Loop
XP
61
The While Loop
 The While loop runs a command group as
long as a specific condition is met, but it does
not employ any counters.
 The general syntax of the While loop is:
while (condition) {
JavaScript Commands
}
 condition is a Boolean expression that can
be either true or false
Java script
Java script

More Related Content

PDF
MVC Design Pattern in JavaScript by ADMEC Multimedia Institute
PDF
Murach: How to transfer data from controllers
PDF
Responsive Design and Bootstrap
PDF
Murach : How to work with session state and cookies
PPTX
Intro To C++ - Class 04 - An Introduction To C++ Programming, Part III
PPTX
Murach : HOW to work with controllers and routing
PDF
Murach: How to validate data in asp.net core mvc
PDF
Murach: How to use Entity Framework EF Core
MVC Design Pattern in JavaScript by ADMEC Multimedia Institute
Murach: How to transfer data from controllers
Responsive Design and Bootstrap
Murach : How to work with session state and cookies
Intro To C++ - Class 04 - An Introduction To C++ Programming, Part III
Murach : HOW to work with controllers and routing
Murach: How to validate data in asp.net core mvc
Murach: How to use Entity Framework EF Core

What's hot (13)

PDF
Excel VBA programming basics
PDF
Murach': HOW TO DEVELOP A DATA DRIVEN MVC WEB
PDF
Visual basic asp.net programming introduction
PPT
Introduction to programming using Visual Basic 6
PPTX
Vb6.0 intro
PPT
Krazykoder struts2 annotations
PPTX
Controls events
DOCX
Cis247 i lab 2 of 7 employee class
PDF
Visual Basic(Vb) practical
PPT
ASP.NET 03 - Working With Web Server Controls
PPTX
Angular workshop - Full Development Guide
PDF
Vb tutorial
PPTX
Unit 1 - R Programming (Part 2).pptx
Excel VBA programming basics
Murach': HOW TO DEVELOP A DATA DRIVEN MVC WEB
Visual basic asp.net programming introduction
Introduction to programming using Visual Basic 6
Vb6.0 intro
Krazykoder struts2 annotations
Controls events
Cis247 i lab 2 of 7 employee class
Visual Basic(Vb) practical
ASP.NET 03 - Working With Web Server Controls
Angular workshop - Full Development Guide
Vb tutorial
Unit 1 - R Programming (Part 2).pptx
Ad

Viewers also liked (16)

PPS
Master in javascript
PPTX
Varo Presentation
PPTX
ՏՏ Համայնքի Կոոպերատիվ | Credit Union for the IT Industry
PPTX
Super cars
PPTX
Presentation final-version Andranik Terzyan
PPT
Algoritm
DOC
ՏԵՂԵԿԱՏՎԱԿԱՆ ԵՎ ՀԱՂՈՐԴԱԿՑԱԿԱՆ ՏԵԽՆՈԼՈԳԻԱՆԵՐԻ (ՏՀՏ) ԿԻՐԱՌՈՒՄՆ ՈՒՍՈՒՄՆԱԿԱՆ ԳՈՐ...
PPTX
PPTX
Ինֆորմացիայի տեսակները, կոդավորումը:
PPTX
Yerevan School 198 - Safer Internet Armenia - Safe.am
PPTX
Vanadzor Secondary School after Raffi N 19
PPTX
DOC
Hishoxutiun
PPTX
School 154 Safer Internet Armenia - Safe.am
PPT
Algoritm
PPT
Algoritmner
Master in javascript
Varo Presentation
ՏՏ Համայնքի Կոոպերատիվ | Credit Union for the IT Industry
Super cars
Presentation final-version Andranik Terzyan
Algoritm
ՏԵՂԵԿԱՏՎԱԿԱՆ ԵՎ ՀԱՂՈՐԴԱԿՑԱԿԱՆ ՏԵԽՆՈԼՈԳԻԱՆԵՐԻ (ՏՀՏ) ԿԻՐԱՌՈՒՄՆ ՈՒՍՈՒՄՆԱԿԱՆ ԳՈՐ...
Ինֆորմացիայի տեսակները, կոդավորումը:
Yerevan School 198 - Safer Internet Armenia - Safe.am
Vanadzor Secondary School after Raffi N 19
Hishoxutiun
School 154 Safer Internet Armenia - Safe.am
Algoritm
Algoritmner
Ad

Similar to Java script (20)

PPT
Java script
PDF
3. Java Script
PPT
JavaScripttttttttttttttttttttttttttttttttttttttt.ppt
PDF
Javascript pdf for beginners easy levell
PDF
Iwt note(module 2)
PPTX
CSC PPT 12.pptx
PDF
internet Chapter 4-JavascripPrepare a ppt of video compression techniques bas...
PPTX
Java script
PDF
Ch3- Java Script.pdf
PPT
JAVA SCRIPT.pptbbdndndmdndndndndnndmmddnndn
PDF
Client sidescripting javascript
PPT
08. session 08 intoduction to javascript
PDF
Javascript - Ebook (A Quick Guide)
PPTX
Typescript language extension of java script
PDF
C++ Lab Maual.pdf
PDF
C++ Lab Maual.pdf
PDF
ArduinoWorkshop2.pdf
PPTX
04-JS.pptx
PPTX
04-JS.pptx
PPTX
04-JS.pptx
Java script
3. Java Script
JavaScripttttttttttttttttttttttttttttttttttttttt.ppt
Javascript pdf for beginners easy levell
Iwt note(module 2)
CSC PPT 12.pptx
internet Chapter 4-JavascripPrepare a ppt of video compression techniques bas...
Java script
Ch3- Java Script.pdf
JAVA SCRIPT.pptbbdndndmdndndndndnndmmddnndn
Client sidescripting javascript
08. session 08 intoduction to javascript
Javascript - Ebook (A Quick Guide)
Typescript language extension of java script
C++ Lab Maual.pdf
C++ Lab Maual.pdf
ArduinoWorkshop2.pdf
04-JS.pptx
04-JS.pptx
04-JS.pptx

Recently uploaded (20)

PPTX
Share_Module_2_Power_conflict_and_negotiation.pptx
PPTX
ELIAS-SEZIURE AND EPilepsy semmioan session.pptx
PPTX
Core Concepts of Personalized Learning and Virtual Learning Environments
PDF
MBA _Common_ 2nd year Syllabus _2021-22_.pdf
PDF
David L Page_DCI Research Study Journey_how Methodology can inform one's prac...
PDF
BP 505 T. PHARMACEUTICAL JURISPRUDENCE (UNIT 2).pdf
PDF
Skin Care and Cosmetic Ingredients Dictionary ( PDFDrive ).pdf
PDF
My India Quiz Book_20210205121199924.pdf
PPTX
Education and Perspectives of Education.pptx
PPTX
What’s under the hood: Parsing standardized learning content for AI
PDF
MICROENCAPSULATION_NDDS_BPHARMACY__SEM VII_PCI .pdf
PDF
BP 704 T. NOVEL DRUG DELIVERY SYSTEMS (UNIT 2).pdf
PDF
BP 704 T. NOVEL DRUG DELIVERY SYSTEMS (UNIT 1)
PDF
Τίμαιος είναι φιλοσοφικός διάλογος του Πλάτωνα
PDF
LEARNERS WITH ADDITIONAL NEEDS ProfEd Topic
PPTX
A powerpoint presentation on the Revised K-10 Science Shaping Paper
PPTX
Unit 4 Computer Architecture Multicore Processor.pptx
DOCX
Cambridge-Practice-Tests-for-IELTS-12.docx
PDF
medical_surgical_nursing_10th_edition_ignatavicius_TEST_BANK_pdf.pdf
PDF
HVAC Specification 2024 according to central public works department
Share_Module_2_Power_conflict_and_negotiation.pptx
ELIAS-SEZIURE AND EPilepsy semmioan session.pptx
Core Concepts of Personalized Learning and Virtual Learning Environments
MBA _Common_ 2nd year Syllabus _2021-22_.pdf
David L Page_DCI Research Study Journey_how Methodology can inform one's prac...
BP 505 T. PHARMACEUTICAL JURISPRUDENCE (UNIT 2).pdf
Skin Care and Cosmetic Ingredients Dictionary ( PDFDrive ).pdf
My India Quiz Book_20210205121199924.pdf
Education and Perspectives of Education.pptx
What’s under the hood: Parsing standardized learning content for AI
MICROENCAPSULATION_NDDS_BPHARMACY__SEM VII_PCI .pdf
BP 704 T. NOVEL DRUG DELIVERY SYSTEMS (UNIT 2).pdf
BP 704 T. NOVEL DRUG DELIVERY SYSTEMS (UNIT 1)
Τίμαιος είναι φιλοσοφικός διάλογος του Πλάτωνα
LEARNERS WITH ADDITIONAL NEEDS ProfEd Topic
A powerpoint presentation on the Revised K-10 Science Shaping Paper
Unit 4 Computer Architecture Multicore Processor.pptx
Cambridge-Practice-Tests-for-IELTS-12.docx
medical_surgical_nursing_10th_edition_ignatavicius_TEST_BANK_pdf.pdf
HVAC Specification 2024 according to central public works department

Java script

  • 2. XP 2 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
  • 3. XP 3 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
  • 4. XP 4 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
  • 5. XP 5 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
  • 6. XP 6 Java vs. JavaScript  Requires the JDK to create the applet  Requires a Java virtual machine to run the applet  Applet files are distinct from the XHTML code  Source code is hidden from the user  Programs must be saved as separate files and compiled before they can be run  Programs run on the server side  Requires a text editor  Required a browser that can interpret JavaScript code  JavaScript can be placed within HTML and XHTML  Source code is made accessible to the user  Programs cannot write content to the hard disk  Programs run on the client side
  • 7. XP 7 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.
  • 8. XP 8 Other Client-side Languages  Internet Explorer supports JScript.  JScript is identical to JavaScript, but there are some JavaScript commands not supported in JScript, and vice versa.  Other client-side programming languages are also available to Web page designers, such as the Internet Explorer scripting language, VBScript.
  • 9. XP 9 Example of Web Site using JavaScript
  • 10. XP 10 Writing a JavaScript Program  The Web browser runs a JavaScript program when the Web page is first loaded, or in response to an event.  JavaScript programs can either be placed directly into the HTML file or they can be saved in external files.  placing a program in an external file allows you to hide the program code from the user  source code placed directly in the HTML file can be viewed by anyone
  • 11. XP 11 Writing a JavaScript Program  A JavaScript program can be placed anywhere within the HTML file.  Many programmers favor placing their programs between <head> tags in order to separate the programming code from the Web page content and layout.  Some programmers prefer placing programs within the body of the Web page at the location where the program output is generated and displayed.
  • 12. XP 12 Using the <script> Tag  To embed a client-side script in a Web page, use the element: <script type=“text/javascript” > script commands and comments </script>  To access an external script, use: <script src=“url” type=“text/javascript”> script commands and comments </script>
  • 13. XP 13 Comments  The syntax for a single-line comment is: // comment text  The syntax of a multi-line comment is: /* comment text covering several lines */
  • 14. XP 14 Hiding Script from Older Browsers  You can hide the script from these browsers using comment tags: <script type=“text/javascript”> <!-- Hide from non-JavaScript browsers JavaScript commands // Stop hiding from older browsers --> </script>  When a Web browser that doesn’t support scripts encounters this code, it ignores the <script> tag.
  • 15. XP 15 Writing Output to a Web Page  JavaScript provides two methods to write text to a Web page:  document.write(“text”);  document.writeln(“text”);  The document.writeln() method differs from document.write() in that it attaches a carriage return to the end of each text string sent to the Web page. document.write("<h3>News Flash!</h3><br />");
  • 16. XP 16 JavaScript Syntax Issues  JavaScript commands and names are case- sensitive.  JavaScript command lines end with a semicolon to separate it from the next command line in the program.  in some situations, the semicolon is optional  semicolons are useful to make your code easier to follow and interpret
  • 17. XP 17 Working with Variables & Data  A variable is a named element in a program that stores information. The following restrictions apply to variable names:  the first character must be either a letter or an underscore character ( _ )  the remaining characters can be letters, numbers, or underscore characters  variable names cannot contain spaces  Variable names are case-sensitive.  document.write(Year);
  • 18. XP 18 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
  • 19. XP 19 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”;
  • 20. XP 20 Working with Dates  There are two ways to create a date object: variable = new Date(“month day, year, hours:minutes: seconds”) variable = new Date(year, month, day, hours, minutes, seconds”)  variable is the name of the variable that contains the date information  month, day, year, hours, minutes, and seconds indicate the date and time var Today=new Date(“October 15, 2006”); var Today=new Date(2006, 9, 15);
  • 21. XP 21 Retrieving the Day & Time Values  JavaScript stores dates and times as the number of milliseconds since 6 p.m on 12/31/69.  Use built in JavaScript date methods to do calculations.  If you want the ThisDay variable to store the day of the month. To get that information, apply the getDate() method. DayValue = DateObject.getDate()
  • 22. XP 22 Retrieving the Month Value  The getMonth() method extracts the value of the current month.  JavaScript starts counting months with 0 for January, you may want to add 1 to the month number returned by the getMonth() method.  ThisMonth = Today.getMonth()+1;
  • 23. XP 23 Retrieving the Year Value  The getFullYear() method extracts the year value from the date variable.  ThisYear = Today.getFullYear();
  • 24. XP 24 Working with Expressions 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;
  • 26. XP 26 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++;
  • 27. XP 27 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;
  • 28. XP 28 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
  • 30. XP 30 The Math Object & Math 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);
  • 32. XP 32 Creating JavaScript Functions function function_name(parameters) { JavaScript commands }  parameters are the values sent to the function (note: not all functions require parameters)  { and } are used to mark the beginning and end of the commands in the function.
  • 33. XP 33 Creating JavaScript Functions  Function names are case-sensitive.  The function name must begin with a letter or underscore ( _ ) and cannot contain any spaces.  There is no limit to the number of function parameters that a function may contain.  The parameters must be placed within parentheses, following the function name, and the parameters must be separated by commas.
  • 34. XP 34 Performing an Action with a 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
  • 35. XP 35 Performing an Action with a 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”
  • 36. XP 36 Returning a Value from a 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
  • 37. XP 37 Placing a Function 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.
  • 38. document.write("Today is "+ThisMonth+"/"+ ThisDay+"/"+ThisYear+"<br />"); document.write("Only "+DaysLeft+ " days until Christmas");
  • 39. <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");
  • 40. 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; } library.js
  • 41. XP 41 Setting Date Values JavaScript functions that allow you to set or change the values of date objects
  • 42. XP 42 Working with Conditional 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
  • 43. XP 43 Comparison, Logical, and 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
  • 44. XP 44 An Example of 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 (==)
  • 46. XP 46 A Logical Operator  The logical operator && returns a value of true only if all of the Boolean expressions are true.
  • 47. XP 47 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”.
  • 48. XP 48 Using an If...Else Statement if (condition) { JavaScript Commands if true } else JavaScript Commands if false }  condition is an expression that is either true or false, and one set of commands is run if the expression is true, and another is run if the expression is false
  • 49. 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"); } if...else Conditional Statement
  • 50. XP 50 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.
  • 51. XP 51 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”.
  • 52. <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>
  • 53. 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]; } Creating the MonthText Function in library2.js
  • 54. <head> <script src="library2.js" type="text/javascript"></script> </head> var MonthName=MonthTxt(ThisMonth); Calling the MonthTxt Function use the ThisMonth variable to call the MonthTxt function and then stores the result in a new variable named “MonthName”
  • 55. XP 55 Working with Program Loops  A program loop is a set of instructions that is executed repeatedly.  There are two types of loops:  loops that repeat a set number of times before quitting  loops that repeat as long as a certain condition is met
  • 56. XP 56 The For Loop  The For loop allows you to create a group of commands to be executed a set number of times through the use of a counter that tracks the number of times the command block has been run.  Set an initial value for the counter, and each time the command block is executed, the counter changes in value.  When the counter reaches a value above or below a certain stopping value, the loop ends.
  • 57. XP 57 The For Loop Continued for (start; condition; update) { JavaScript Commands }  start is the starting value of the counter  condition is a Boolean expression that must be true for the loop to continue  update specifies how the counter changes in value each time the command block is executed
  • 60. Specifying Counter Values in a For Loop
  • 61. XP 61 The While Loop  The While loop runs a command group as long as a specific condition is met, but it does not employ any counters.  The general syntax of the While loop is: while (condition) { JavaScript Commands }  condition is a Boolean expression that can be either true or false