Object is the primitive JavaScript object type. All JavaScript objects are descended from Object. That is, all JavaScript
objects have the methods defined for Object.
eval( string string) : Number|Object|String
Deprecated. Evaluates a string of JavaScript code in the context of an object.
|
Show Details |
4.0+ |
1.0+ |
3.0+ |
7.0+ |
1.0+ |
Parameters
string |
string |
Any string representing a JavaScript expression, statement, or sequence of statements. The expression can include variables
and properties of existing objects.
|
Returns
- Remarks
The eval method is not longer available as a method of Object . Use the top-level eval
function.
Backward Compatibility
JavaScript 1.2 and 1.3
eval as a method of Object and every object derived from Object is deprecated (but
still available).
JavaScript 1.1
eval is a method of Object and every object derived from Object .
- See Also
-
eval
- Availability
-
JavaScript 1.1|Deprecated as a method of objects; retained as a top-level function in JavaScript 1.2.|Removed as a method of objects in JavaScript 1.4
|
Checks whether a property is inherited.
|
Show Details |
5.5+ |
1.0+ |
6.0+ |
7.0+ |
no |
Parameters
String |
propname |
The name of the property to check for. |
Returns
- See Also
-
Function.prototype|Object.propertyIsEnumerable
- Availability
-
JavaScript 1.5|JScript 5.5|ECMAScript v3
|
Returns true if the object is a prototype of another.
|
Show Details |
5.5+ |
1.0+ |
6.0+ |
7.0+ |
no |
Parameters
Object |
object |
The object to compare the original object to. |
Returns
- See Also
-
Function.prototype|Object.constructor
- Availability
-
JavaScript 1.5|JScript 5.5|ECMAScript v3
|
Returns true if the property can be enumerated in a for/in loop.
|
Show Details |
5.5+ |
1.0+ |
6.0+ |
7.0+ |
no |
Parameters
String |
property |
Name of the property to check. |
Returns
- See Also
-
Function.prototype|Object.hasOwnProperty
- Availability
-
JavaScript 1.5|JScript 5.5|ECMAScript v3
|
Returns a localized string representation of an object.
|
Show Details |
4.0+ |
1.0+ |
3.0+ |
7.0+ |
1.0+ |
Returns
- See Also
-
Array.toLocaleString|Date.toLocaleString|Number.toLocaleString|Object.toString
- Availability
-
JavaScript 1.5|JScript 5.5|ECMAScript v3
|
Returns a string representing the source code of the object.
|
Show Details |
no |
1.0+ |
4.06+ |
no |
no |
Returns
-
Example: Using toSource
The following code defines the Dog object type and creates theDog , an object of type Dog :
function Dog(name,breed,color,sex) {
this.name=name
this.breed=breed
this.color=color
this.sex=sex
}
theDog = new Dog("Gabby","Lab","chocolate","girl")
Calling the toSource method of theDog displays the JavaScript source that defines the object:
theDog.toSource()
//returns ({name:"Gabby", breed:"Lab", color:"chocolate", sex:"girl"})
- Remarks
-
The toSource method returns the following values:
- For the built-in
Object object, toSource returns the following string indicating that the
source code is not available:
function Object() {
[native code]
}
- For instances of
Object , toSource returns a string representing the source code.
- For custom objects,
toSource returns the JavaScript source that defines the object as a string.
This method is usually called internally by JavaScript and not explicitly in code. You can call toSource while
debugging to examine the contents of an object.
- See Also
-
toString
- Availability
-
JavaScript 1.3
|
Returns a string representing the specified object.
|
Show Details |
4.0+ |
1.0+ |
2.0+ |
7.0+ |
1.0+ |
Returns
-
The following example prints the string equivalent of the current location.
document.write("location.toString() is " + location.toString() + " ")
The output is as follows:
location.toString() is file:///C|/TEMP/myprog.htmll
Assume you have an Image object named sealife defined as follows:
<IMG NAME="sealife" SRC="images\seaotter.gif" ALIGN="left" VSPACE="10">
Because the Image object itself has no special toString method, sealife.toString()
returns the following:
object Image
The following example prints the string equivalents of the numbers 0 through 9 in decimal and binary.
for (x = 0; x < 10; x++) {
document.write("Decimal: ", x.toString(10), " Binary: ",
x.toString(2), " ")
}
The preceding example produces the following output:
Decimal: 0 Binary: 0
Decimal: 1 Binary: 1
Decimal: 2 Binary: 10
Decimal: 3 Binary: 11
Decimal: 4 Binary: 100
Decimal: 5 Binary: 101
Decimal: 6 Binary: 110
Decimal: 7 Binary: 111
Decimal: 8 Binary: 1000
Decimal: 9 Binary: 1001
- Remarks
-
Every object has a toString method that is automatically called when it is to be represented as a text value
or when an object is referred to in a string concatenation. For example, the following examples require theDog
to be represented as a string:
document.write(theDog)
document.write("The dog is " + theDog)
By default, the toString method is inherited by every object descended from Object . You can override
this method for custom objects that you create. If you do not override toString in a custom object, toString
returns [object type] , where type is the object type or the name of the constructor
function that created the object.
For example:
var o = new Object()
o.toString // returns [object Object]
- See Also
-
Object.constructor|Object.toLocaleString|Object.valueOf
- Availability
-
JavaScript 1.0|JScript 2.0|ECMAScript v1
|
Removes a watchpoint set with the watch method.
|
Show Details |
no |
no |
4.0+ |
7.0+ |
no |
Parameters
String |
prop |
The name of a property of the object. |
Returns
- Remarks
By default, this method is inherited by every object descended from Object .
- See Also
-
watch
- Availability
-
JavaScript 1.2
|
Returns the primitive value of the specified object
|
Show Details |
4.0+ |
1.0+ |
3.0+ |
7.0+ |
1.0+ |
Returns
- Remarks
-
JavaScript calls the valueOf method to convert an object to a primitive value. You rarely need to invoke the
valueOf method yourself; JavaScript automatically invokes it when encountering an object where a primitive value
is expected.
By default, the valueOf method is inherited by every object descended from Object . Every
built-in core object overrides this method to return an appropriate value. If an object has no primitive value, valueOf
returns the object itself, which is displayed as:
object Object]
You can use valueOf within your own code to convert a built-in object into a primitive value. When you create
a custom object, you can override Object.valueOf to call a custom method instead of the default Object
method.
Overriding valueOf for custom objects
You can create a function to be called in place of the default valueOf method. Your function must take no
arguments.
Suppose you have an object type myNumberType and you want to create a valueOf method for
it. The following code assigns a user-defined function to the object's valueOf method:
myNumberType.prototype.valueOf = new Function(functionText);
With the preceding code in place, any time an object of type myNumberType is used in a context where it is
to be represented as a primitive value, JavaScript automatically calls the function defined in the preceding code.
An object's valueOf method is usually invoked by JavaScript, but you can invoke it yourself as follows:
myNumber.valueOf();
Note
Objects in string contexts convert via the toString method, which is different from String objects
converting to string primitives using valueOf . All string objects have a string conversion, if only "[object
type] ". But many objects do not convert to number, boolean, or function.
- See Also
-
Object.toString
- Availability
-
JavaScript 1.1|JScript 2.0|ECMAScript v1
|
watch( String prop, String handler) : Object
Watches for a property to be assigned a value and runs a function when that occurs.
|
Show Details |
no |
no |
6.0+ |
7.0+ |
no |
Parameters
String |
prop |
Name of the property to set. |
String |
handler |
Name of the function to call. |
Returns
Example: Using watch and unwatch
This script displays the following:
o.p changed from 1 to 2
o.p changed from 2 to 3
o.p changed from undefined to 4
- Remarks
-
Watches for assignment to a property named prop in this object, calling handler(prop, oldval, newval)
whenever prop is set and storing the return value in that property. A watchpoint can filter (or nullify) the
value assignment, by returning a modified newval (or oldval ).
If you delete a property for which a watchpoint has been set, that watchpoint does not disappear. If you later recreate
the property, the watchpoint is still in effect.
To remove a watchpoint, use the unwatch method. By default, the watch method is inherited by
every object descended from Object .
The JavaScript debugger has functionality similar to that provided by this method, as well as other debugging options.
For information on the debugger, see Venkman.
In NES 3.0 and 4.x, handler is called from assignments in script as well as native code. In Firefox, handler
is only called from assignments in script, not from native code. For example, window.watch('location', myHandler)
will not call myHandler if the user clicks a link to an anchor within the current document. However, the following
code will call myHandler : window.location += '#myAnchor'; .
- See Also
-
unwatch
- Availability
-
JavaScript 1.2
|