JavaScript
Syntax and Semantics
Lecture Overview
Core JavaScript Syntax (I will not review
every nuance of the language)
JavaScript IS
CASE
SENSITIVE
Statements (1)
Syntax is the set of rules for a language
In a programming language, programming
instructions are called statements
Compare a programming statement to an
sentence in English
A statement expresses a complete thought
Statements are executed by a Web browser
JavaScript statements are terminated by a
semicolon (;)
Statements (2)
Statements are composed of:
Values
Fixed values are called literals
Changing values are called variables
Operators
Expressions
Keywords
Comments
Fixed (Literal) Values
Fixed values (literals) are of two types
Numbers are written without quotes
Examples
Do not include commas in numbers
1.24
84000
Strings are surrounded by quotation marks
“Hello World”
Variables
Variables are used to store data values that can
change
Declare variables with the var keyword
var data type is generic
JavaScript is not strongly typed like Java
Type conversion happens on the fly
Variables (Identifiers)
Variables are also called identifiers
Identifier naming rules are similar to most languages
First character must be a letter, underscore (_), or
dollar sign ($)
Subsequent characters may be letters, digits,
underscores, or dollar signs
Variables (Example)
Declare a variable named temp
var temp;
Store the value 42 in the variable temp
(assignment statement)
temp = 42;
var x; // Now x is undefined
var x = 5; // Now x is a Number
var x = "John"; // Now x is a String
Variables (Scope)
Like VB, there are local and global variables
Local variables are declared inside of a
procedure
Global variables are declared in a <script>
block but outside of a procedure
We usually declare these in the <head>block
script so they are universally available
Operators
The equals sign (=) is the assignment operator
Arithmetic operators are +, -, *, / as you would
expect
++ is increment and -- is decrement
The + operator is also the string concatenation
operator
% is the modulus operator though
http://www.w3schools.com/js/js_operators.asp
Operator precedence
http://www.w3schools.com/js/js_arithmetic.asp
Expressions
An expression is a combination of values,
variables, and operators
The result of an expression is typically stored
in a variable
Example to add two numbers. The value 10 is
stored in the variable v
var v;
v = 5 + 5;
Comments
Comments appear differently inside of
JavaScript block that outside of a JavaScript
block
The characters // on a line mark the line as
a comment
The strings /* and */ mark the begin and
end of a multi-line comment
Adding Comments
<html>
<body>
<script>
// This is a comment.
/* This is a two line
comment */
document.write("Greetings")
</script>
</body>
</html>
Functions (Introduction)
They are the same thing as a VB function or
any other programming language function
Functions execute
When called by another procedure
When implemented as an event handler
Event handlers are discussed later
Declaring a Function
function declarations typically appear in
the <head> section
Naming rules are the same as for any identifier
Functions execute only when explicitly called
Syntax:
function name(parameter –list)
{
statements:
}
Declaring a Function
(Example)
Declare a function named printMessage
<head>
<script>
function printMessage(msg)
{
alert(msg);
}
</script>
</head>
Calling a Function
Functions execute when called
Call functions explicitly from other JavaScript
code
Call functions implicitly from an event handler
Calling a Function (Example)
From another function or from within another
JavaScript block, call the function with it’s
name an parameters
Example:
<script>
printMessage();
</script>
Returning a
Value from a Function
Call the return statement with an argument
as in
return 0;
Comparisons
Similar to VB
== is the test for equality
!= is the test for inequality
The other comparison operators are the same
as in VB
http://www.w3schools.com/js/js_comparisons.asp
Decision-Making
Again, conceptually similar to VB
{} mark blocks instead of EndIf
if specifies block of code execute, if a specified condition is
true
else specifies a block of code execute, if the same condition is
false
else if specifies a new condition to test, if the first condition
is false
switch specifies many alternative blocks of code to be
executed based on the same condition
http://www.w3schools.com/js/js_if_else.asp
Decision-Making (if)
Called a one-way if
Use to conditionally execute code when a
condition is true
if (value < 0)
{
negative = true;
}
Decision-Making (if… else)
Called a two-way if
Use to conditionally execute code when a condition is
true and another code block when a condition is false
if (value < 0)
{
negative = true;
}
else
{
negative = false;
}
Decision-Making (if…
elseif… else)
Called a multi-way if
Create multiple elseif blocks for multiple
conditions
http://www.w3schools.com/js/js_if_else.asp
Loops (Introduction)
VB has for loops and while loops
JavaScript works similarly although the syntax differs
Again use {} to mark the beginning and end of
the a block
while - Executes a block of code while a condition is
true (pretest loop)
do/while - also loops through a block of code while
a specified condition is true for - loops through a
block of code a number of times (posttest loop)
Loops (while)
First test the loop condition and execute the code
block if the condition is true
Syntax:
while (x < 10)
{
x++;
}
Loops (do while)
Code block executes and then the condition is
tested
Loop would execute at least once
Loops (for)
A loop variation that can be used when the
number of iterations is known in advance
Statement 1 is executed before the loop starts
Statement 2 defines the condition for running the
loop
Statement 3 is executed each time after the loop
has executed
Loops (for)
Example:
for (i = 0; i < 5; i++)
{
text += "The number is " + i +
"<br />";
}
Arrays (Introduction)
Like VB, arrays are used to store several
values in a single variable
You need not redimension arrays. JavaScript
creates elements automatically
Use [] as an array subscript instead of VB’s ()
Declare an array
var months = [“Jan”, “Feb”, “Mar”,
“Apr”];
Arrays (Referencing)
Use an array to reference an array element
Same as VB except use [] instead of ()
var month;
month = months[0];
Arrays
(Properties and Methods)
length returns the number of elements in the
array
push adds an element to the end of an array
A Bit About Dates
The JavaScript Date object allows you to
work with dates
You can
Get parts of a date (month / day / year)
Perform date arithmetic
Convert strings to dates
Convert dates to strings and format them
Dates can be represented in local time or UTC
Constructors and Methods
The Date() constructor gets the current get
getDay() gets the day of the week (0-6)
getFullYear() gets the 4 digit year
getMonth() gets the month of the year
There are many other methods
See http://www.w3schools.com/jsref/jsref_obj_date.asp
Type Conversion
We often need to convert strings to numbers
and back
Call parseFloat to convert a string to a
floating-point value
Call parseInt to convert a string to an
integral value
Both methods accept one function argument
(the string to convert)
Type Conversion (Example)
JavaScript Objects
(Introduction)
© Copyright 2025 Paperzz