[Previous reference file]
Object. Lets you work with dates and times.
To create a Date object:
1. dateObjectName = new Date()
2. dateObjectName = new Date("month day, year hours:minutes:seconds")
3. dateObjectName = new Date(year, month, day)
4. dateObjectName = new Date(year, month, day, hours, minutes, seconds)
To use a Date object:
1. dateObjectName.propertyName
2. dateObjectName.methodName(parameters)
Exceptions: The Date object's parse and
UTC methods are static methods that you use as follows:
Date.UTC(parameters)
Date.parse(parameters)
dateObjectName is either the name of a new object
or a property of an existing object. When using Date properties and
methods, dateObjectName is either the name of an existing Date
object or a property of an existing object.
month, day, year, hours, minutes, and seconds
are string values for form 2 of the syntax. For forms 3 and 4, they are integer
values.
propertyName is one of the properties listed below.
methodName is one of the methods listed below.
None
-
-
Navigator 2.0
-
Navigator 3.0: added prototype property
The Date object is a built-in JavaScript object.
Form 1 of the syntax creates today's date and time. If you
omit hours, minutes, or seconds from form 2 or 4 of the syntax, the value
will be set to zero.
The way JavaScript handles dates is very
similar to the way Java handles dates: both languages have many of the same
date methods, and both store dates internally as the number of milliseconds
since January 1, 1970 00:00:00. Dates prior to 1970 are not allowed.
The Date object has the following properties:
The Date object has the following methods:
None.
The following examples show several ways to assign dates:
today = new Date()
birthday = new Date("December 17, 1995 03:24:00")
birthday = new Date(95,12,17)
birthday = new Date(95,12,17,3,24,0)
See also:
Property. A Boolean value indicating the default selection
state of a checkbox or radio button.
1. checkboxName.defaultChecked
2. radioName[index].defaultChecked
checkboxName is either the value of the NAME attribute
of a Checkbox object or an element in the elements array.
radioName is the value of the NAME attribute of a
Radio object.
index is an integer representing a radio button in
a Radio object.
Checkbox,
Radio
Navigator 2.0
Yes
If a checkbox or radio button is selected by default, the
value of the defaultChecked property is true; otherwise, it is false.
defaultChecked initially reflects whether the CHECKED attribute is
used within an <INPUT> tag; however, setting defaultChecked
overrides the CHECKED attribute.
You can set the defaultChecked property at any time.
The display of the checkbox or radio button does not update when you set
the defaultChecked property, only when you set the checked
property.
The following example resets an array of radio buttons called
musicType on the musicForm form to the default selection
state:
function radioResetter() {
var i=""
for (i in document.musicForm.musicType) {
if (document.musicForm.musicType[i].defaultChecked==true) {
document.musicForm.musicType[i].checked=true
}
}
}
checked property
Property. A Boolean value indicating the default selection
state of an option in a Select object.
selectName.options[index].defaultSelected
optionName.defaultSelected
selectName is either the value of the NAME attribute
of a Select object or an element in the elements array.
index is an integer representing an option in a
Select object.
optionName is the name of a Select object
option created using the Option() constructor.
Option object (see Select
object), options array (see Select
object)
-
-
Navigator 2.0
-
Navigator 3.0: property of Option object
Yes
If an option in a Select object is selected by default,
the value of the defaultSelected property is true; otherwise, it is
false. defaultSelected initially reflects whether the SELECTED attribute
is used within an <OPTION> tag; however, setting defaultSelected
overrides the SELECTED attribute.
You can set the defaultSelected property at any time.
The display of the Select object does not update when you set the
defaultSelected property, only when you set the selected or
selectedIndex properties.
A Select object created without the MULTIPLE attribute
can have only one option selected by default. When you set
defaultSelected in such an object, any previous default selections,
including defaults set with the SELECTED attribute, are cleared. If you set
defaultSelected in a Select object created with the MULTIPLE
attribute, previous default selections are not affected.
In the following example, the restoreDefault function
returns the musicType Select object to its default state. The
for loop uses the options array to evaluate every option in
the Select object. The if statement sets the selected
property if defaultSelected is true.
function restoreDefault() {
for (var i = 0; i < document.musicForm.musicType.length; i++) {
if (document.musicForm.musicType.options[i].defaultSelected == true) {
document.musicForm.musicType.options[i].selected=true
}
}
}
The previous example assumes that the Select object
is similar to the following:
<SELECT NAME="musicType">
<OPTION SELECTED> R&B
<OPTION> Jazz
<OPTION> Blues
<OPTION> New Age
</SELECT>
index,
selected,
selectedIndex properties
Property. The default message displayed in the status bar
at the bottom of the window.
windowReference.defaultStatus
windowReference is a valid way of referring to a
window, as described in the window
object.
window object
Navigator 2.0
Yes
The defaultStatus message appears when nothing else
is in the status bar. Do not confuse the defaultStatus property with
the status property. The status property reflects a priority
or transient message in the status bar, such as the message that appears
when a mouseOver event occurs over an anchor.
You can set the defaultStatus property at any time.
You must return true if you want to set the defaultStatus property
in the onMouseOut or onMouseOver event handlers.
In the following example, the statusSetter function
sets both the status and defaultStatus properties in an onMouseOver
event handler:
function statusSetter() {
window.defaultStatus = "Click the link for the Netscape home page"
window.status = "Netscape home page"
}
<A HREF="http://home.netscape.com"
onMouseOver = "statusSetter(); return true">Netscape</A>
In the previous example, notice that the onMouseOver event
handler returns a value of true. You must return true to set status
or defaultStatus in an event handler.
status property
Property. A string indicating the default value of a
Password, Text, or Textarea object.
1. passwordName.defaultValue
2. textName.defaultValue
3. textareaName.defaultValue
passwordName is either the value of the NAME attribute
of a Password object or an element in the elements array.
textName is either the value of the NAME attribute
of a Text object or an element in the elements array.
textareaName is either the value of the NAME attribute
of a Textarea object or an element in the elements array.
Password object,
Text object,
Textarea object
Navigator 2.0
Yes
The initial value of defaultValue differs for each
object:
-
-
For Text objects, it initially reflects the value of the VALUE attribute.
-
For Textarea objects, it initially reflects the value specified between
the <TEXTAREA> and </TEXTAREA> tags.
-
For Password objects, it initially is null (for security reasons),
regardless of the value of the VALUE attribute.
Setting defaultValue programmatically overrides the
initial setting. If you programmatically set defaultValue for the
Password object and then evaluate it, JavaScript returns the current
value.
You can set the defaultValue property at any time.
The display of the related object does not update when you set the
defaultValue property, only when you set the value property.
The following function evaluates the defaultValue
property of objects on the surfCity form and displays the values in
the msgWindow window:
function defaultGetter() {
msgWindow=window.open("")
msgWindow.document.write("hidden.defaultValue is " +
document.surfCity.hiddenObj.defaultValue + "<BR>")
msgWindow.document.write("password.defaultValue is " +
document.surfCity.passwordObj.defaultValue + "<BR>")
msgWindow.document.write("text.defaultValue is " +
document.surfCity.textObj.defaultValue + "<BR>")
msgWindow.document.write("textarea.defaultValue is " +
document.surfCity.textareaObj.defaultValue + "<BR>")
msgWindow.document.close()
}
value property
Property. A description of a MIME type or plug-in.
1. navigator.mimeTypes[index1].description
2. navigator.plugins[index2].description
index1 is either an integer representing a MIME type
supported by the client or a string containing the type of a MimeType
object (from the type property).
index2 is either an integer representing a plug-in
installed on the client or a string containing the name of a Plugin
object (from the name property).
Navigator 3.0
No
For MimeType objects, the description property
is a description of the content and encoding for the MIME data type.
For Plugin objects, the description property
is a description of the plug-in. The description is supplied by the plug-in
itself.
description is a read-only property.
See the examples for the
MimeType and
Plugin objects.
For MimeType objects:
enabledPlugin,
type,
suffixes properties
For Plugin objects:
filename,
length, name
properties
Object. Contains information on the current document, and
provides methods for displaying HTML output to the user.
To define a document object, use standard HTML syntax
with the addition of JavaScript event handlers:
<BODY
BACKGROUND="backgroundImage"
BGCOLOR="backgroundColor"
TEXT="foregroundColor"
LINK="unfollowedLinkColor"
ALINK="activatedLinkColor"
VLINK="followedLinkColor"
[onBlur="handlerText"]
[onFocus="handlerText"]
[onLoad="handlerText"]
[onUnload="handlerText"]>
</BODY>
BACKGROUND specifies an image that fills the background
of the document.
BGCOLOR, TEXT, LINK, ALINK,
and VLINK are color specifications expressed as a hexadecimal RGB
triplet (in the format "rrggbb" or "#rrggbb") or as one of the string literals
listed in "Color values".
To use a document object's properties and methods:
1. document.propertyName
2. document.methodName(parameters)
propertyName is one of the properties listed below.
methodName is one of the methods listed below.
window object
-
-
Navigator 2.0
-
Navigator 3.0: added onBlur and onFocus syntax; added applets, domain,
embeds, and images properties; added Applet, Area, Image,
and Plugin objects as properties
An HTML document consists of <HEAD> and <BODY>
tags. The <HEAD> tag includes information on the document's title and
base (the absolute URL base to be used for relative URL links in the document).
The <BODY> tag encloses the body of a document, which is defined by
the current URL. The entire body of the document (all other HTML elements
for the document) goes within the <BODY> tag.
You can load a new document by using
the window.location object.
You can clear the document pane (and remove the text, form
elements, and so on so they do not redisplay) by using document.close();
document.open(); document.write()
. You can omit the
document.open()
call if you are writing text or HTML, since
write does an implicit open of that mime type if the document stream
is closed.
You can reference the anchors, forms, and links of a document
by using the anchors, forms, and links arrays. These arrays
contain an entry for each anchor, form, or link in a document.
Do not use location as a property of the
document object; use the document.URL property instead. The
document.location property, which is a synonym for
document.URL, will be removed in a future release.
The document object has the following properties:
The following objects are also properties of the
document object:
The document object has the following methods:
None. The onBlur, onFocus, onLoad, and onUnload event handlers
are specified in the <BODY> tag but are actually event handlers for
the window object.
The following example creates two frames, each with one
document. The document in the first frame contains links to anchors in the
document of the second frame. Each document defines its colors.
doc0.html
, which defines
the frames, contains the following code:
<HTML>
<HEAD>
<TITLE>Document object example</TITLE>
</HEAD>
<FRAMESET COLS="30%,70%">
<FRAME SRC="doc1.html" NAME="frame1">
<FRAME SRC="doc2.html" NAME="frame2">
</FRAMESET>
</HTML>
doc1.html
, which defines the content for the
first frame, contains the following code:
<HTML>
<SCRIPT>
</SCRIPT>
<BODY
BGCOLOR="antiquewhite"
TEXT="darkviolet"
LINK="fuchsia"
ALINK="forestgreen"
VLINK="navy">
<P><B>Some links</B>
<LI><A HREF="doc2.html#numbers" TARGET="frame2">Numbers</A>
<LI><A HREF="doc2.html#colors" TARGET="frame2">Colors</A>
<LI><A HREF="doc2.html#musicTypes" TARGET="frame2">Music types</A>
<LI><A HREF="doc2.html#countries" TARGET="frame2">Countries</A>
</BODY>
</HTML>
doc2.html
, which defines the content for the
second frame, contains the following code:
<HTML>
<SCRIPT>
</SCRIPT>
<BODY
BGCOLOR="oldlace" onLoad="alert('Hello, World.')"
TEXT="navy">
<P><A NAME="numbers"><B>Some numbers</B></A>
<UL><LI>one
<LI>two
<LI>three
<LI>four</UL>
<P><A NAME="colors"><B>Some colors</B></A>
<UL><LI>red
<LI>orange
<LI>yellow
<LI>green</UL>
<P><A NAME="musicTypes"><B>Some music types</B></A>
<UL><LI>R&B
<LI>Jazz
<LI>Soul
<LI>Reggae</UL>
<P><A NAME="countries"><B>Some countries</B></A>
<UL><LI>Afghanistan
<LI>Brazil
<LI>Canada
<LI>Finland</UL>
</BODY>
</HTML>
Frame object,
window object
Property. Specifies the domain name of the server that served
a document.
document.domain
document
Yes
Navigator 3.0
The domain property lets scripts on multiple servers
share properties when data tainting is not enabled. With tainting disabled,
a script running in one window can read properties of another window only
if both windows come from the same Web server. But large Web sites with multiple
servers might need to share properties among servers. For example, a script
on the host www.yahoo.com
might need to share properties with
a script on the host search.yahoo.com
.
If scripts on two different servers change their
domain property so that both scripts have the same domain name, both
scripts can share properties. For example, a script loaded from
search.yahoo.com
could set its domain property to
"yahoo.com". A script from www.yahoo.com
running in another
window could also set its domain property to "yahoo.com". Then, since
both scripts have the domain "yahoo.com", these two scripts can share properties,
even though they did not originate from the same server.
You can change domain only in a restricted way.
Initially, domain contains the hostname of the Web server from which
the document was loaded. You can set domain only to a domain suffix
of itself. For example, a script from search.yahoo.com
can't
set its domain property to "search.yahoo". And a script from
IWantYourMoney.com
cannot set its domain to "yahoo.com".
Once you change the domain property, you cannot
change it back to its original value. For example, if you change
domain from "search.yahoo.com" to "yahoo.com", you cannot reset it
to "search.yahoo.com".
You can change domain at any time.
The following statement changes the domain property
to "braveNewWorld.com". This statement is valid only if "braveNewWorld.com"
is a suffix of the current domain, such as "www.braveNewWorld.com".
document.domain="braveNewWorld.com"
taint,
untaint functions;
"Using data tainting for security"
Property. Euler's constant and the base of natural logarithms,
approximately 2.718.
Math.E
Math
Navigator 2.0
No
Because E is a constant, it is a read-only property
of Math.
The following function returns Euler's constant:
function getEuler() {
return Math.E
}
exp,
LN2, LN10,
LOG2E, LOG10E,
PI, SQRT1_2,
SQRT2 properties
Property. An array of objects corresponding to form elements
(such as checkbox, radio, and Text objects) in source
order.
1. formName.elements[index]
2. formName.elements.length
formName is either the name of a form or an element
in the forms array.
index is an integer representing an object on a form
or the name of an object as specified by the NAME attribute.
Form object
Navigator 2.0
No
You can reference a form's elements in your code by using
the elements array. This array contains an entry for each object
(Button, Checkbox, FileUpload, Hidden, Password,
Radio, Reset, Select, Submit, Text, or
Textarea object) in a form in source order. For example, if a form
has a text field and two checkboxes, these elements are reflected as
formName.elements[0]
, formName.elements[1]
, and
formName.elements[2]
.
Although you can also reference a form's elements by using
the element's name (from the NAME attribute), the elements array provides
a way to reference Form objects programmatically without using their
names. For example, if the first object on the userInfo form is the
userName Text object, you can evaluate it in either of the
following ways:
userInfo.userName.value
userInfo.elements[0].value
To obtain the number of elements on a form, use the
length property: formName.elements.length
. Each radio
button in a Radio object appears as a separate element in the
elements array.
Elements in the elements array are read-only. For
example, the statement formName.elements[0]="music"
has no
effect.
The value of each element in the elements array is
the full HTML statement for the object.
The elements array has the following properties:
See the examples for the
Frame property.
Form object
Property. An array of objects corresponding to form elements
(such as Checkbox, Radio, and Text objects) in source
order. See the elements array for
information.
Property. An array reflecting all the <EMBED> tags
in a document in source order.
To generate output from a plug-in application, use standard
HTML syntax:
<EMBED
SRC=source
NAME=embedName
HEIGHT=height
WIDTH=width>
[parameterName=parameterValue]
[ ... parameterName=parameterValue]
</EMBED>
For the complete syntax of the <EMBED> tag, see
http://home.netscape.com/eng/mozilla/3.0/handbook/plugins/index.html.
SRC=source</I> specifies the URL containing the source
content.
NAME=embedName specifies the
name of the embedded object in the document. You can use this name when indexing
the embeds array.
HEIGHT=height specifies the height of the applet
in pixels within the browser window.
WIDTH=width specifies the width of the applet in
pixels within the browser window.
parameterName=parameterValue specifies the name and
value of a parameter to pass to the embedded object's plug-in.
document
Navigator 3.0
No
You can reference embedded objects (created with the
<EMBED> tag) in your code by using the embeds array. This array
contains an entry for each <EMBED> tag in a document in source order.
For example, if a document contains three <EMBED> tags, these
<EMBED> tags are reflected as document.embeds[0]
,
document.embeds[1]
, and document.embeds[2]
.
Elements in the embeds array may have public callable
functions, if they reference a "LiveConnected" plug-in. See
Chapter 4, "LiveConnect."
To use the embeds array:
1. document.embeds[index]
2. document.embeds.length
index is an integer representing an <EMBED>
tag or the name of an embedded object as specified by the NAME attribute.
To obtain the number of <EMBED> tags in a document,
use the length property: document.embeds.length
.
Use the elements in the embeds array to interact with the
plug-in that is displaying the embedded object. If a plug-in is not Java-enabled,
you cannot do anything with its element in the embeds array. The fields
and methods of the elements in the embeds array vary from plug-in
to plug-in; see the documentation supplied by the plug-in manufacturer.
When you use the <EMBED> tag to generate output from
a plug-in application, you are not creating a Plugin object. See the
Plugin object.
Elements in the embeds array are read-only. For example,
the statement document.embeds[0]="myavi.avi"
has no effect.
The embeds array has the following properties:
None.
The following code includes an audio plug-in in a
document.
<EMBED SRC="train.au" HEIGHT=50 WIDTH=250>
Plugin object
Property. The Plugin object for the plug-in that
is configured for the specified MIME type.
navigator.mimeTypes[index].enabledPlugin
index is either an integer representing a MIME type
supported by the client or a string containing the type of a MimeType
object (from the type property).
MimeType
Navigator 3.0
No
Use the enabledPlugin property to determine which
plug-in is configured for a specific MIME type. Each plug-in may support
multiple MIME types, and each MIME type could potentially be supported by
multiple plug-ins. However, only one plug-in can be configured for
a MIME type. (On Macintosh and Unix, the user can configure the handler for
each MIME type; on Windows, the handler is determined at Navigator start-up
time.)
The enabledPlugin property is a reference to a
Plugin object that represents the plug-in that is configured for the
specified MIME type. If the MIME type does not have a plug-in configured,
enabledPlugin is null.
Without the enabledPlugin property, you could determine
if the user has a particular plug-in installed, if their Navigator can handle
a particular MIME type, and if the MIME type is supported by any plug-ins.
But you could not determine whether a plug-in is configured for the MIME
type. You might need to know this information, for example, so you could
dynamically emit an <EMBED> tag on the page if the user has a plug-in
configured for the MIME type.
enabledPlugin is a read-only property.
The following example determines whether the Shockwave plug-in
is installed. If it is, a movie is displayed.
// Can we display Shockwave movies?
mimetype = navigator.mimeTypes["application/x-director"]
if (mimetype) {
// Yes, so can we display with a plug-in?
plugin = mimetype.enabledPlugin
if (plugin)
// Yes, so show the data in-line
document.writeln("Here\'s a movie: <EMBED SRC=mymovie.dir HEIGHT=100 WIDTH=100>")
else
// No, so provide a link to the data
document.writeln("<A HREF='mymovie.dir>Click here</A> to see a movie.")
} else {
// No, so tell them so
document.writeln("Sorry, can't show you this cool movie.")
}
See also the examples for the
MimeType object.
description,
type,
suffixes properties
Property. A string specifying the MIME encoding of the
form.
formName.encoding
formName is either the name of a form or an element
in the forms array.
Form object
Navigator 2.0
No
The encoding property initially reflects the ENCTYPE
attribute of the <FORM> tag; however, setting encoding overrides
the ENCTYPE attribute.
You can set the encoding property at any time.
The following function returns the value of the
musicForm encoding property:
function getEncoding() {
return document.musicForm.encoding
}
action,
method,
target properties;
Form object
Function. Returns the ASCII encoding of an argument in the
ISO Latin-1 character set.
escape("string")
string is a nonalphanumeric string in the ISO Latin-1
character set, or a property of an existing object.
Navigator 2.0
The value returned by the escape function is a string
of the form "%xx," where xx is the ASCII encoding of a character in
the argument. If you pass the escape function an alphanumeric character,
the escape function returns the same character. escape is a
top-level function not associated with any object.
The following example returns "Hello%2C%20World":
escape("Hello, World")
The following example returns "%26":
escape("&")
The following example returns "%21%23":
escape("!#")
unescape function
Method. The eval method evaluates a string of JavaScript
code in the context of the specified object.
[objectName.]eval(string)
objectName is the object for which a string is to
be evaluated. If omitted, the string is evaluated without regard to any
object.
string is any string representing a JavaScript expression,
statement, or sequence of statements. The expression can include variables
and properties of existing objects.
eval is a method of all objects.
Navigator 2.0: a built-in JavaScript function, not associated
with any object, but part of the language itself
Navigator 3.0: a method of every
object
The argument of the eval method is a string. If the
string represents an expression, eval evaluates the expression. If
the argument represents one or more JavaScript statements, eval performs
the statements. Do not call eval to evaluate an arithmetic expression;
JavaScript evaluates arithmetic expressions automatically.
If you construct an arithmetic expression as a string, you
can use eval to evaluate it at a later time. For example, suppose
you have a variable x. You can postpone evaluation of an expression
involving x by assigning the string value of the expression, say
"3 * x + 2"
, to a variable, and then calling
eval at a later point in your script.
Example 1. Both of the write statements below display
42. The first evaluates the string "x + y + 1," and the second evaluates
the string "42."
var x = 2
var y = 39
var z = "42"
document.write(eval("x + y + 1"), "<BR>")
document.write(eval(z), "<BR>")
Example 2. In the following example, the
getFieldName(n) function returns the name of the nth form element
as a string. The first statement assigns the string value of the third form
element to the variable field. The second statement uses eval
to display the value of the form element.
var field = getFieldName(3)
document.write("The field named ", field, " has value of ", eval(field + ".value"))
Example 3. The following example uses eval to
evaluate the string str. This string consists of JavaScript statements
that open an Alert dialog box and assigns z a value of 42 if x
is five, and assigns zero to z otherwise. When the second statement
is executed, eval will cause these statements to be performed, and
it will also evaluate the set of statements and return the value that is
assigned to z.
var str = "if (x == 5) {alert('z is 42'); z = 42;} else z = 0; "
document.write("<P>z is ", eval(str))
Example 4. In the following example, the
setValue function uses eval to assign the value of the variable
newValue to the text field textObject:
function setValue (textObject, newValue) {
eval ("document.forms[0]." + textObject + ".value") = newValue
}
Example 5. The following example creates breed
as a property of the object myDog, and also as a variable. The first
write statement uses eval('breed')
without specifying an object;
the string "breed" is evaluated without regard to any object, and the
write method displays "Shepherd", which is the value of the
breed variable. The second write statement uses
myDog.eval('breed')
which specifies the object myDog;
the string "breed" is evaluated with regard to the myDog object, and
the write method displays "Lab", which is the value of the
breed property of the myDog object.
function Dog(name,breed,color) {
this.name=name
this.breed=breed
this.color=color
}
myDog = new Dog("Gabby")
myDog.breed="Lab"
var breed='Shepherd'
document.write("<P>" + eval('breed'))
document.write("<BR>" + myDog.eval('breed'))
Example 6. The following example uses eval
within a function that defines an object type, flintstone. The statement
fred = new flintstone("x=42")
creates the object fred
with the properties x, y, z, and z2. The write statements display
the values of these properties as 42, 43, 44, and 45, respectively.
function flintstone(str) {
this.eval("this."+str)
this.eval("this.y=43")
this.z=44
this["z2"] = 45
}
fred = new flintstone("x=42")
document.write("<BR>fred.x is " + fred.x)
document.write("<BR>fred.y is " + fred.y)
document.write("<BR>fred.z is " + fred.z)
document.write("<BR>fred.z2 is " + fred.z2)
Method. Returns enumber, where number is the argument,
and e is Euler's constant, the base of the natural logarithms.
Math.exp(number)
number is any numeric expression or a property of an
existing object.
Math
Navigator 2.0
The following function returns the exp value of the variable
x:
function getExp(x) {
return Math.exp(x)
}
If you pass getExp the value 1, it returns
2.718281828459045.
E,
log, pow
methods
[Next reference file]