(WEB DEVELOPMENT LESSON 9)
During the last Lesson we had a discussion on Flow Control & Loops
We discussed the concept of flow
control using the “if” and “switch” structures
And also the concept behind the “while” and “for” looping structures
We also solved simple problems using flow control and loop structures
if…else --?-- switch
If the action to be taken of the value of a single variable (or a single
expression), use ‘switch’
When the action depends on the values of multiple variables (or
expressions), use the ‘if...else’ structure
Compound Statements:
for: Example 1
for --?-- while
When the exact number of
iterations is known, use the ‘for’ loop
When the number of iterations depend upon a condition being met, use the
‘while’ loop
‘for’ loops become especially useful when used in conjunction with
arrays
We’ll find out about arrays today, and we’ll probe their usefulness as
part of ‘for’ loop structures
Today’s Topic:
Arrays
We will find out why we need
arrays
We will become able to use arrays for solving simple problems
Array:
An indexed list of elements
We said that a variable is a container that holds a value.
Similarly, an Array can be considered a container as well, but this one
can hold multiple values
Array:
An indexed list of elements
Example:
There are many ways of assigning
identifiers to the following fruit
strawberry
fruit1
fruit[ 0 ]
Array
An indexed list of elements
fruit[ 0 ], fruit[ 1 ], fruit[ 2 ], and fruit[ 3 ] are the elements of
an array
‘fruit’ is the identifier for that array
The length of the ‘fruit’ array is 4, i.e. ‘fruit’ has four elements
Array
for ( x = 1 ; x < 6000 ; x = x + 1 )
{
document.write ( x ) ;
}
Initial count
Condition Operation
orange
fruit2
fruit[ 1 ]
apple
fruit3
fruit[ 2 ]
watermelo
n
fruit4
fruit[ 3 ]
Identifier
Fruit [ 0 ]
var student1, student2, student3,
student4 ;
student1 = “Waseem” ;
student2 = “Waqar” ;
student3 = “Saqlain” ;
student4 = “Daanish” ;
document.write( student1 ) ;
document.write( student2 ) ;
document.write( student3 ) ;
document.write( student4 ) ;
student = new Array( 4 ) ; //array declaration
student[ 0 ] = “Waseem” ;
student[ 1 ] = “Waqar” ;
student[ 2 ] = “Saqlain” ;
student[ 3 ] = “Daanish” ;
for ( x = 0 ; x < 4 ; x = x + 1 ) {
document.write( student[ x ] ) ;
}
26.1 Arrays in JavaScript
• In JavaScript, arrays are
implemented in the form of the ‘Array’ object
• The key property of the ‘Array’ object is ‘length’, i.e the number of
elements in an array
• Two of the key ‘Array’ methods are:
– reverse( )
– sort( )
• Elements of an array can be of any type; you can even have an array
containing other arrays
Declaring a New Instance of the Array Object
• ‘student’ is an instance of the
‘Array’ object
• ‘student’ was declared such that it is of length ‘4’
• That is, student is an array having 4 elements
• The four elements of the array are: ‘student[ 0 ]’, ‘student[ 1 ]’,
‘student[ 2 ]’, and ‘student[ 3 ]’
student = new Array( 4 )
Square bracket
Index
Can you see the
advantage of
using arrays
along with the
‘for’ loop?
This is the identifier
of the new instance
The ‘new’ operator creates
an instance Pair of
parentheses
This is the parent object (or
class) of the new instance
Length of the new
instance of ‘Array’
The ‘assignment’ operator
An Object
‘Instances’ of an Object
All instances
of an object are objects
themselves!
‘Property’ Values of the Instances May
Differ
student = new Array( 4 )
26.2 Array Identifiers
The naming rules for Array identifiers are the same as were discussed
for variable identifiers
Assigning Values to Array Elements
a[ 1 ] = 5 ; //the second element
name[ 5 ] = “kim” ;
number = 5 ;
name[ number ] = name[ 5 ] ;
for ( x = 0 ; x < 10 ; x = x + 1 ) {
y[ x ] = x * x ;
}
Remember: just like C, C++ and Java, the first element of an array has
an index number equal to zero
JavaScript Arrays are Heterogeneous
Unlike many other popular
languages, a JavaScript Array can hold elements of multiple data types,
simultaneously
a = new Array( 9 ) ;
b = new Array( 13 ) ;
b[ 0 ] = 23.7 ;
b[ 1 ] = “Kim Continental Hotel” ;
b[ 2 ] = a ;
26.3 The ‘length’ Property of Arrays
d = new Array ( 5 ) ;
document.write( d.length ) ;
The ‘length’ Property of Arrays
x = new Array ( 10 ) ;
for ( x = 0 ; x < 10 ; x = x + 1 ) {
y[ x ] = x * x ;
}
x = new Array ( 10 ) ;
for ( x = 0 ; x < x.length ; x = x + 1 ) {
y[ x ] = x * x ;
}
26.4 Array Methods: sort( )
26.5 Sorts the elements in alphabetical order
x = new Array ( 4 ) ;
x[ 0 ] = “Waseem” ;
x[ 1 ] = “Waqar” ;
x[ 2 ] = “Saqlain” ;
x[ 3 ] = “Shoaib” ;
x.sort( ) ;
for ( k = 0 ; k < x.length; k = k + 1 ) { document.write( x[ k ] +
“<BR>” ) ;
}
Were the elements sorted in ascending or descending order?
What if you wanted to arrange them in the reverse order?
26.6 Array Methods: reverse( )
26.7 Reverses the order of the elements
‘d’
is an instance of the
‘Array’ object
‘length’ is a property of
the object ‘d’
What is advantage of
using ‘x.length’ here
instead of using the
literal ‘10’?
Saqlain
Shoaib
Waqar
Waseem
x = new Array ( 4 ) ;
x[ 0 ] = “Waseem” ;
x[ 1 ] = “Waqar” ;
x[ 2 ] = “Saqlain” ;
x[ 3 ] = “Shoaib” ;
x.reverse( ) ;
x.sort( ) ;
for ( k = 0 ; k < x.length; k = k + 1 ) { document.write( x[ k ] +
“<BR>”) ;
}
Array Methods: reverse( )
Reverses the order of the elements
x = new Array ( 4 ) ;
x[ 0 ] = “Waseem” ;
x[ 1 ] = “Waqar” ;
x[ 2 ] = “Saqlain” ;
x[ 3 ] = “Shoaib” ;
x.sort( ) ;
x.reverse( ) ;
for ( k = 0 ; k < x.length; k = k + 1 ) { document.write( x[ k ] +
“<BR>”) ;
}
Let’s Now Do a More Substantial Example
Develop a Web page that prompts the user for 10 words, and then displays
them in form of a list in two
different ways:
1.In the order in which the words were entered
2.In a sorted order
We will try to show you the complete code - the JavaScript part as well
as the HTML part - for this
example
Saqlain
Shoaib
Waqar
Waseem
Is this the
required
result?
Waseem
Waqar
Shoaib
Saqlain
26.7 Pseudo Code
1.Declare the array that will be
used for storing the words
2.Prompt the user and read the user input into the elements of the array
3.Now write the array to the document
4.Sort the array
5.Write the sorted array to the document
<HTML>
<HEAD>
<TITLE>Sort Ten Words</TITLE>
<SCRIPT>
words = new Array ( 10 ) ;
for ( k = 0 ; k < words.length ; k = k + 1 ) {
words[ k ] = window.prompt( "Enter word # " + k, "" ) ;
}
document.write( "UNSORTED WORDS:" + "<BR>" ) ;
for ( k = 0 ; k < words.length ; k = k + 1 ) {
document.write( words[ k ] + "<BR>" ) ;
}
words.sort( ) ;
document.write( "SORTED WORDS:" + "<BR>" ) ;
for ( k = 0 ; k < words.length ; k = k + 1 ) {
document.write( words[ k ] + "<BR>" ) ;
}
</SCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>
<HTML>
<HEAD>
<TITLE>Sort Ten Words</TITLE>
<SCRIPT>
//JavaScript Code
</SCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>
The next three slides show the JavaScript code that goes between the
<SCRIPT>, </SCRIPT> tags
Pseudo Code
•Declare the array that will be
used for storing the words
•Prompt the user and read the user input into the elements of the array
•Now write the array to the document
•Sort the array
•Write the sorted array to the document
words = new Array ( 10 ) ;
for ( k = 0 ; k < words.length ; k = k + 1 ) {
words[ k ] = window.prompt(
"Enter word # " + k, "" ) ;
}
Pseudo Code
1.Declare the array that will be used for storing the words
2.Prompt the user and read the user input into the elements of the array
3.Now write the array to the document
4.Sort the array
5.Write the sorted array to the document
document.write( "Unsorted Words:" + "<BR>" ) ;
for ( k = 0 ; k < words.length ; k = k + 1 ) { document.write( words[ k
] + "<BR>" ) ;
}
Pseudo Code
1.Declare the array that will be
used for storing the words
2.Prompt the user and read the user input into the elements of the array
3.Now write the array to the document
4.Sort the array
5.Write the sorted array to the document
words.sort( ) ;
document.write( "Sorted Words:" + "<BR>" ) ;
for ( k = 0 ; k < words.length ; k = k + 1 ) { document.write( words[ k
] + "<BR>" ) ;
}
During Today’s Lesson …
•We found out why we need arrays
•We became able to use arrays for solving simple problems
Next (the 10th) Web Dev Lecture:
Functions & Variable Scope
•To become familiar with some of JavaScript’s built-in functions
•To be able to understand the concept of user-defined functions and
their use for solving simple
problems
•To become familiar with the concept of local and global variables
This method is used
for collecting data from the user. It can display a
message and provides a field in which the user can enter data
|