|Language:||English, Spanish, Indonesian|
|Genre:||Children & Youth|
|ePub File Size:||29.31 MB|
|PDF File Size:||8.56 MB|
|Distribution:||Free* [*Regsitration Required]|
Now your object owns a property—in this case a text string containing some information about the object and called info. Note that the month is displayed as 0. Click here to view code image if typeof document. The value of 27 returned from the function call cube 3 immediately becomes the argument passed to the alert method. These objects. We next apply the splice array method to the words array. To help you.
If your browser does this. If you have more than one browser installed on your computer. You should see a display similar to Figure 1.
Caution The default security settings in some browsers cause them to show a security warning when they are asked to open local content. Caution Some text editor programs might try to add a. Save it to a convenient place on your computer.
After the code has been read and executed. A comment written using this syntax can span multiple lines: To ease the readability of your code. Click here to view code image this is statement 1. We refer to such lines as comments.
In this case.
The onMouseOut event. When using this within an event handler added via an attribute of an HTML element. Creating an Image Rollover We can use the onMouseOver and onMouseOut events to change how an image appears while the mouse pointer is above it.
Any number 3. Which of these is NOT a true statement about variables? Their names are case sensitive. They can contain numeric or non-numeric information. Their names may contain spaces.
There may be 50 places in your code where such calculations are carried out. However, if all such calculations are wrapped up in a few functions used throughout the application, then you just need to make changes to those functions.
Calling Functions Code wrapped up in a function definition will not be executed when the page loads. Instead, it waits quietly until the function is called.
To call a function, you simply use the function name with the parentheses wherever you want to execute the statements contained in the function: For example, you may want to add a call to your new function sayHello to the onClick event of a button: Tip Function names, like variable names, are case-sensitive.
Passing Arguments to Functions It would be rather limiting if your functions could only behave in an identical fashion each and every time they were called, as would be the case in the preceding example. Fortunately, you can extend the capabilities of functions a great deal by passing data to them.
You do this when the function is called, by passing to it one or more arguments: Now we can call our function, replacing the variable x with a number. Calling the function like the following results in a dialog box being displayed that contains the result of the calculation, in this case Of course, you could equally pass a variable name as an argument.
The names that you give to arguments are only used inside the function definition to specify how it works. We talk about this in more detail later in the hour when we discuss variable scope. The function buttonReport takes three arguments, those being the id, name, and value of the button element that has been clicked. With each of these three pieces of information, a short message is constructed.
These three messages are then concatenated into a single string, which is passed to the alert method to pop open a dialog containing the information. Such a prefixed character is known as an escape sequence. We need to add an onClick event handler to this button from which to call our function. The complete listing is shown in Listing 3. Use your editor to create the file buttons. You should find that it generates output messages like the one shown in Figure 3. Returning Values from Functions OK, now you know how to pass information to functions so that they can act on that information for you.
But how can you get information back from your function? Luckily, there is a mechanism to collect data from a function call—the return value. Instead of using an alert dialog within the function, as in the previous example, this time we prefixed our required result with the return keyword.
To access this value from outside the function, we simply assign to a variable the value returned by the function: Note The values returned by functions are not restricted to numerical quantities as in this example.
There is a golden rule to remember when using functions: If we run this code, we first see an alert dialog with the value of the variable invoiceValue which should be 55, but in fact will probably be something like We will not, however, then see an alert dialog containing the value of the variable total.
We refer to variables declared inside a function definition as being local variables; that is, local to that function. Variables declared outside any function are known as global variables.
To add a little more confusion, local and global variables can have the same name, but still be different variables! The range of situations where a variable is defined is known as the scope of the variable—we can refer to a variable as having local scope or global scope.
Within the showVars function we manipulate two variables, a and b. The variable a we define inside the function; this is a local variable that only exists inside the function, quite separate from the global variable also called a that we declare at the very beginning of the script.
The variable b is not declared inside the function, but outside; it is a global variable. When the page is loaded, showVars returns a message string containing information about the updated values of the two variables a and b, as they exist inside the function—a with local scope, and b with global scope. A message about the current value of the other, global variable a is then appended to the message, and the message displayed to the user.
You also found out how to return information from a function to its calling statement. Finally, you learned about the local or global scope of a variable, and how the scope of variables affects how functions work with them.
Can one function contain a call to another function? Most definitely; in fact, such calls can be nested as deeply as you need them to be.
What characters can I use in function names? Function names must start with a letter or an underscore and can contain letters, digits, and underscores in any combination.
They cannot contain spaces, punctuation, or other special characters. Functions are called using a. The function keyword b. The call command c. The function name, with parentheses 2. What happens when a function executes a return statement? An error message is generated. A value is returned and function execution continues. A value is returned and function execution stops. A variable declared inside a function definition is called a. A local variable b. A global variable c. An argument.
A function is called using the function name. After executing a return statement, a function returns a value and then ceases function execution. Exercises Write a function to take a temperature value in Celsius as an argument, and return the equivalent temperature in Fahrenheit, basing it on the code from Hour 2. Test your function in an HTML page.
Hour 4. We also looked at one of its child objects, document. In this hour, we introduce some more of the utility objects and methods that you can use in your scripts. Interacting with the User Among the methods belonging to the window object, there are some designed specifically to help your page communicate with the user by assisting with the input and output of information.
The term modal means that script execution pauses, and all user interaction with the page is suspended, until the user clears the dialog. The alert method takes a message string as its argument: The confirm dialog, though, provides the user with a. Clicking on either button clears the dialog and allows the calling script to continue, but the confirm method returns a different value depending on which button was clicked—Boolean true in the case of OK, or false in the case of Cancel.
Note that here, though, we pass the returned value of true or false to a variable so we can later test its value and have our script take appropriate action depending on the result. In this case, though, the dialog invites the user to enter information. A prompt dialog is called in just the same manner as confirm: The prompt method also allows for an optional second argument, giving a default response in case the user clicks OK without typing anything: If the user clicks OK or presses Enter without typing anything into the prompt dialog.
For now. The prompt dialog generated by the previous code snippet is shown in Figure 4. Imagine your HTML contains the following element: Content of DIV element. The variable myDivContents will now contain the string value: Click here to view code image document. We now have access to the chosen page element and all of its properties and methods.
Caution Of course. Its methods enable you to use the list. Click here to view code image history. We can think of the page URL as a series of parts: This can be an integer. You can use this property to find how many pages the user has visited: There is also the method go. The properties are listed in Table 4.
The only property owned by the history object is its length. The history object has three methods. To avoid this and get the page directly from the server. Click here to view code image location.
TABLE 4. If you would rather the sending page were removed from the history list and replaced with the new URL. This replaces the old URL with the new one both in the browser and in the history list. Use your editor to create the file navigator. Save the file and open it in your browser. Figure 4. Why is it reporting the appName property as Netscape. The result is that the object provides.
Not all properties are supported in all browsers hence the failure to report the cpuClass property in the preceding example. Each Date object we create can represent a different date and time.
Querying the navigator object is nearly always the wrong way to do it. Note Later in the book we talk about feature detection. There is no Date object already created for you as part of the DOM.
Create a Date Object with the Current Date and Time This is the simplest way to create a new Date object containing information about the.
Using a date string: The preceding example produces output like the following: Click here to view code image Created: Fri Jan 06 Wed Feb 08 In the preceding code snippet. The preceding example calculates a date 33 days in the future.
We can also carry out date and time arithmetic. A full list of the methods of the Date object is available in Appendix B. A full list of the available methods is available in Appendix B. Click here to view code image Object created on day number 5 After amending date to 15th. Unlike the Date object. Note the use of toDateString and toTimeString. Finding Minimum and Maximum We can use min and max to pick the largest and smallest number from a list: If the fractional part is less than.
The output as written to the page looks like this: Rounding The methods ceil. As Math. In other words. The youngest person is 19 years old The oldest person is 31 years old Random Numbers To generate a random number. They are listed in Table 4. Caution You always use Math methods directly. Mathematical Constants Various often-used mathematical constants are available as properties of Math.
We also implement a. By using with you can save yourself some tedious typing. Take a look at Listing 4. As we do so. As you will recall. We can access the individual parts of the time and date using getDate.
In addition to the get. See Appendix B for a full list of methods. You should use getFullYear and setFullYear instead.
The methods getYear and setYear do exist. Which method of the Math object always rounds a number up to the next integer? What happens when a user clicks OK in a confirm dialog? A value of true is returned when OK is clicked. A value of true is returned to the calling program. Because of the potential problems with dates spanning the millennium.
The dialog is cleared and control is returned to the calling program. The location. The displayed message is returned to the calling program. If my loaded page is http: Exercises Modify Listing 4.
Use the history object to create a few pages with their own Forward and Back buttons. The volume returned should be rounded up to the nearest cubic meter.
All the following are valid floating-point numbers: Note In exponential notation. To put it another way. They can be represented in the traditional way. An integer is a whole number—positive. Not a Number NaN NaN is the value returned when your script tries to treat something non-numerical as a number.
Exponential notation provides a compact way to express numbers from the very large to the very small. You can test for non-numerical values with the isNaN function: If the first character in the specified string is a number.
Click here to view code image parseFloat " The isFinite function takes the value to test as an argument and tries to convert that argument into a number. False and true are known as Boolean values.
There is also the keyword literal -Infinity to signify the negative infinity. This function allows us to optionally include. If the result is NaN.
Click here to view code image isFinite Click here to view code image isNaN 3. You can define an empty string by using two quote marks with nothing between them: Examples include the tab character. To use such a character in a string. Strings A string is a sequence of characters from within a given character set for example. The result of inserting these escape sequences is shown in Figure 5. You define a string by enclosing it in single or double quotes: Escape Sequences Some characters that you want to put in a string may not have associated keys on the keyboard.
What we mean by the array data type How to declare and populate arrays How to manage array contents Sometimes it makes sense to store multiple variable values under a single variable name. Initializing an Array You can optionally preload data into your array at the time it is created: The following code returns the length of the preceding array: Array Methods Caution Some of the array methods have the same name—and almost the same function— as string methods of the same name.
Be aware of what data type you are working with. TABLE 6. The length property is automatically updated when you add items to or remove items from the array. Suppose we add a new item to the preceding array: Table 6. Click here to view code image myArray. The method returns the index of the searched-for element. Wednesday indexOf We can use indexOf to find the first place where a particular element occurs in an array.
The first element sets the location in the array where we want to perform the splice. Caution Using splice changes the original array! If you need to preserve the array for use elsewhere in your code. In your text editor. Click here to view code image myWeek. The syntax is a little more complex than that of the previous examples: Click here to view code image array.
The method returns any removed elements. We next apply the splice array method to the words array.
Since the splice method. The method returns an array of elements. We store that array in the variable words. In this hour. Since we supply a single space as the argument to join. The wrangleArray function is called by a small script in the body of the document: What value will be returned by indexOf if it is passed a value that does not appear in the array to which it is applied?
You can create an array of arrays. How would you use join to create a string name containing all of these month names with a single space between names?
We then declare a new variable. It has the following general form: Click here to view code image if this condition is true then do this. Hour 7. Some of the comparison operators are listed in Table 7. IT Research Library. Miscellaneous Books. Computer Languages. Computer Science. Electronic Engineering. Linux and Unix. Microsoft and. Mobile Computing. Networking and Communications. Software Engineering. Special Topics. Web Programming. Other Categories.