dltypeof - Custom JS typeof operator - DHTML Lab | 2 | WebReference

dltypeof - Custom JS typeof operator - DHTML Lab | 2


Logo

JavaScript Programming: dltypeof() v1.0,
An Introduction


Using dltypeof()

Use dltypeof() whereever you would use typeof().

NOTE

The typeof() operator has two syntax variants:

typeof vExpression
typeof( vExpression )

The dltypeof() function has only one:

dltypeof( vExpression )

Don't forget the parentheses !

JS Objects

All the JS objects that are identified as "object" by typeof() are given more meaningful and obvious identifiers.

The JS Object object has a type of "jsobject" to clearly identify it as a JS object and to differentiate it from any other "object" that dltypeof() may fail to isolate as a unique type.

The JS Function.arguments object is given its own type of "arguments" since it is not a true array.

Any JS object that you create with a constructor function is identified with the name of the constructor function.
For example, let's say you create car objects with the following syntax:

function car( sMake, sModel, nWheels )
{
    this.sMake = sMake;
    this.sModel = sModel;
    this.nWheels = nWheels;
}
var oMerc = new car( "Mercedes", "Grand Sports Tourier", 4 );
var oToy  = new car( "Toyota", "Corolla", 4 );

Then:

dltypeof( oMerc ) returns "car"
dltypeof( oToy )  returns "car"

The following table lists all the possible return values for JS objects as well as the original typeof() return values

JS objecttypeof() return value dltypeof() return value
 
Boolean boolean boolean
Function functionfunction
Number number number
String string string
[ no object ] undefined undefined
 
Argumentsobject arguments
Array object array
Date object date
Error object error
Math object math
Null object null
Object object jsobject
RegExp object regexp
[ custom ] objectCustomConstructorFunctionName


dltypeof() also identifies DOM objects.



Send a comment or suggestion to Peter Belesis

Created: August 23, 2004
Revised: August 23, 2004

URL: http://webreference.com/dhtml/column68/2.html

Justtechjobs.comFind a programming school near you






Online Campus Both