Although null and the undefined value are distinct, the == equality operator considers them equal to one another. Consider the following:
my.prop == null
This comparison is
if either the
property does not exist or it does exist but contains the value
. Since both
If you are not sure that your implementation has the undefined variable, you can simply declare your own:
By declaring but not initializing the variable, you assure your implementation has the undefined value. The void operator (see Chapter 5) provides another way to obtain the undefined value.
When the undefined value is used in a Boolean context, it converts to false . When used in a numeric context, it converts to NaN . And when used in a string context, it converts to "undefined".
3.9. The Date Object
var now = new Date( ); // Create an object holding the current date and time. // Create a Date object representing Christmas. // Note that months are zero-based, so December is month 11! var xmas = new Date(2006, 11, 25);
xmas.setFullYear(xmas.getFullYear( ) + 1); // Change the date to next Christmas. var weekday = xmas.getDay( ); // It falls on a Tuesday in 2007. document.write("Today is: " + now.toLocaleString( )); // Current date/time.
The Date object also defines functions (not methods; they are not invoked through a Date object) to convert a date specified in string or numeric form to an internal millisecond representation that is useful for some kinds of date arithmetic.
You can find full documentation on the Date object and its methods in Part III.
3.10. Regular Expressions