Java Script Objects (Contd) Class 3
Java Script Objects (Contd) Class 3
The Array object is used to store multiple values in a single variable. An array is a special variable, which can hold more than one value, at a time. An array can be defined in three ways.
var myCars=new Array(); // regular array (add an optional integer myCars[0]="Saab"; // argument to control array's size) myCars[1]="Volvo"; myCars[2]="BMW";
var
Note: If you specify numbers or true/false values inside the array then the variable type will be Number or Boolean, instead of String. You can refer to a particular element in an array by referring to the name of the array and the index number. The index number starts at 0. Ex: document.write(myCars[0]);
To modify a value in an existing array, just add a new value to the array with a specified index number:
mycars[1] = "Volvo"; mycars[2] = "BMW"; for (i=0;i<mycars.length;i++) { document.write(mycars[i] + "<br />"); } </script> </body> </html>
<html> <body> <script type="text/javascript"> var x; var mycars = new Array(); mycars[0] = "Saab"; mycars[1] = "Volvo"; mycars[2] = "BMW"; for (x in mycars) { document.write(mycars[x] + "<br />"); } </script> </body> </html>
The following example demonstrates how to join two arrays. <html> <body> <script type="text/javascript"> var parents = ["Jani", "Tove"]; var children = ["Cecilie", "Lone"]; var family = parents.concat(children); document.write(family); </script> </body> </html>
The following example demonstrates how to join three arrays. <html> <body> <script type="text/javascript"> var parents = ["Jani", "Tove"]; var brothers = ["Stale", "Kai Jim", "Borge"]; var children = ["Cecilie", "Lone"]; var family = parents.concat(brothers, children); document.write(family); </script> </body> </html>
The following example shows you how to join all elements of an array into a string. <html> <body> <script type="text/javascript"> var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.join() + "<br />"); document.write(fruits.join("+") + "<br />"); document.write(fruits.join(" and ")); </script> </body> </html>
The following example demonstrates how to remove the last element of an array. <html> <body> <script type="text/javascript"> var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.pop() + "<br />"); document.write(fruits + "<br />"); document.write(fruits.pop() + "<br />"); document.write(fruits); </script> </body> </html>
The following example demonstrates how to add new elements to the end of an array. <html> <body> <script type="text/javascript"> var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.push("Kiwi") + "<br />"); document.write(fruits.push("Lemon","Pineapple") + "<br />"); document.write(fruits); </script> </body> </html>
In the following example, you see how to reverse the order of the elements in an array. <html> <body> <script type="text/javascript"> var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.reverse()); </script> </body> </html>
The following example demonstrates how to remove the first element of an array. <html> <body> <script type="text/javascript"> var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.shift() + "<br />"); document.write(fruits + "<br />"); document.write(fruits.shift() + "<br />"); document.write(fruits); </script> </body> </html>
The following example demonstrates how to use slice() to select elements from an array. <html> <body> <script type="text/javascript"> var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.slice(0,1) + "<br />"); document.write(fruits.slice(1) + "<br />"); document.write(fruits.slice(-2) + "<br />"); document.write(fruits); </script> </body> </html>
The following three examples demonstrate how to use sort(). The first sort() example shows how to sort alphabetically and ascending. <html> <body> <script type="text/javascript"> var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.sort()); </script> </body> </html>
The next sort() example demonstrates how to sort numerically and ascending. <html> <body> <script type="text/javascript"> function sortNumber(a, b) { return a - b; } var n = ["10", "5", "40", "25", "100", "1"]; document.write(n.sort(sortNumber)); </script> </body> </html>
The third sort() example demonstrates how to sort numerically and descending. <html> <body> <script type="text/javascript"> function sortNumber(a, b) { return b - a; } var n = ["10", "5", "40", "25", "100", "1"]; document.write(n.sort(sortNumber)); </script> </body> </html>
The following example demonstrates how to use splice() to add an element to the second position in an array. The splice() method adds/removes items to/from an array, and returns the removed item(s). array.splice(index,howmany,item1,.....,itemX) <html> <body> <script type="text/javascript"> var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write("Removed: " + fruits.splice(2,0,"Lemon") + "<br />"); document.write(fruits); </script> </body> </html>
The following example shows you how to convert an array to a string. <html> <body> <script type="text/javascript"> var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.toString()); </script> </body> </html>
The following example shows you how to add new elements to the beginning of an array. <html> <body> <script type="text/javascript"> var fruits = ["Banana", "Orange", "Apple", "Mango"]; document.write(fruits.unshift("Kiwi") + "<br />"); document.write(fruits.unshift("Lemon","Pineapple") + "<br />"); document.write(fruits); </script> <p><b>Note:</b> The unshift() method does not work properly in Internet Explorer, it only returns undefined!</p> </body> </html>
The Boolean object is used to convert a nonBoolean value to a Boolean value (true or false). The Boolean object represents two values: true or false. The following code creates a Boolean object called myBoolean: var myBoolean=new Boolean(); If the Boolean object has no initial value or if it is 0, -0, null, , false, undefined, or NaN, the object is set to false. Otherwise, it is true (even with the string false)!
All the following lines of code create Boolean objects with an initial value of false:
var myBoolean=new Boolean(); var myBoolean=new Boolean(0); var myBoolean=new Boolean(null); var myBoolean=new Boolean(""); var myBoolean=new Boolean(false); var myBoolean=new Boolean(NaN);
And all the following lines of code create Boolean objects with an initial value of true:
var myBoolean=new Boolean(true); var myBoolean=new Boolean("true"); var myBoolean=new Boolean("false"); var myBoolean=new Boolean("Richard");
<html> <body> <script type=text/javascript> var b1=new Boolean(0); var b2=new Boolean(1); var b3=new Boolean(); var b4=new Boolean(null); var b5=new Boolean(NaN); var b6=new Boolean(false); document.write(0 is boolean + b1 +<br />); document.write(1 is boolean + b2 +<br />);
document.write(An empty string is boolean + b3 + <br/>); document.write(null is boolean + b4+ <br />); document.write(NaN is boolean + b5 +<br />); document.write(The string false is boolean + b6 + <br/>); </script> </body> </html>
The Math object allows you to perform mathematical tasks. The Math object includes several mathematical constants and methods. The syntax for using properties/methods of Math is as follows:
The Math object is provided by JavaScript and does not need to be created by the programmer. In fact, trying to create a Math object using new() will result in a JavaScript error.
JavaScript provides eight mathematical constants that can be accessed from the Math object. These are E, PI, square root of 2, square root of 1/2, natural log of 2, natural log of 10, base-2 log of E, and base-10 log of E.
The following example uses the round() method of the Math object to round a number to the nearest integer: document.write(Math.round(4.7)); The preceding code results in the following output: 5 The following example uses the random() method of the Math object to return a random number between 0 and 1: document.write(Math.random()); The preceding code can result in the following output: 0.07730209357983464 The following example uses the floor() and random() methods of the Math object to return a random number between 0 and 10: document.write(Math.floor(Math.random()*11)); The preceding code can result in the following output:1
Example on Math.round()
<html> <body> <script type=text/javascript> document.write(Math.round(0.60) + <br />); document.write(Math.round(0.50) + <br />); document.write(Math.round(0.49) + <br />); document.write(Math.round(-4.40) + <br />); document.write(Math.round(-4.60)); </script> </body> </html>
Example on Math.max()
<html> <body> <script type=text/javascript> document.write(Math.max(5,10) + <br />); document.write(Math.max(0,150,30,20,38) + <br />); document.write(Math.max(-5,10) + <br />); document.write(Math.max(-5,-10) + <br />); document.write(Math.max(1.5,2.5)); </script> </body> </html>
Example on Math.min()
<html> <body> <script type=text/javascript> document.write(Math.min(5,10) + <br />); document.write(Math.min(0,150,30,20,38) + <br />); document.write(Math.min(-5,10) + <br />); document.write(Math.min(-5,-10) + <br />); document.write(Math.min(1.5,2.5)); </script> </body> </html>
A regular expression is an object that describes a pattern of characters. When you search in a text, you can use a pattern to describe what you are searching for. A simple pattern can be a single character. A more complicated pattern can consist of more characters and can be used for parsing, format checking, substitution, and more. Regular expressions are used to perform powerful pattern-matching and search and replace functions on text. The syntax is as follows: var txt=new RegExp(pattern,modifiers); or more simply: var txt=/pattern/modifiers;
The pattern specifies the pattern of an expression. The modifiers specify whether a search should be global, case-sensitive.
The i modifier is used to perform case-insensitive matching. The g modifier is used to perform a global match (find all matches rather than stopping after the first match). The following example demonstrates how to do a case-insensitive search for w3schools in a string:
var str="Visit W3Schools"; var patt1=/w3schools/i;
<html> <body> <script type="text/javascript"> var str = "Visit W3Schools"; var patt1 = /w3schools/i; document.write(str.match(patt1)); </script> </body> </html>
Ex:
<html> <body> <script type="text/javascript"> var str="Is this all there is?"; var patt1=/is/g; document.write(str.match(patt1)); </script> </body> </html>
The following example demonstrates how to do a global, caseinsensitive search for is:
<html> <body>
<script type="text/javascript"> var str="Is this all there is?"; var patt1=/is/gi; document.write(str.match(patt1)); </script> </body> </html>