TypeName: Difference between revisions
Jump to navigation
Jump to search
Line 47: | Line 47: | ||
function TypeName(o) { | function TypeName(o) { | ||
var nameTypes= { | var nameTypes= { | ||
'[object Array]' : 'Array', | |||
'[object | 'boolean' : 'Boolean', | ||
' | |||
'[object Date]' : 'Date', | '[object Date]' : 'Date', | ||
' | 'undefined' : 'Empty', | ||
'[object Error]' : 'Error', | '[object Error]' : 'Error', | ||
' | 'number' : 'Number', | ||
'[object | '[object null]' : 'Null', | ||
'string' : 'String' | |||
}, | }, | ||
TOSTRING = Object.prototype.toString; | TOSTRING = Object.prototype.toString; |
Revision as of 04:10, 19 May 2013
TypeName(variable)
Description
TypeName returns a string specifying the type of a variable. The required parameter, variable, is any variable.
Table 24: TypeName return values
Return value | Description |
---|---|
Boolean | Boolean value |
Currency | Currency value |
Date | Date value |
Double | Double-precision floating-point value |
Integer | Integer value |
Object | Generic object |
String | String value |
Array | Array |
Example (Basic)
Rem TypeName Example 'TypeName returns variable type as a string Dim nInteger, nSingle nInteger = CInt(44) Print 44 & " is a/an " & TypeName(nInteger) nSingle = CSng(99.44) Print 99.44 & " is a/an " & TypeName(nSingle)
Example (JavaScript)
// TypeName Example /* TypeName returns variable type as a string */ function TypeName(o) { var nameTypes= { '[object Array]' : 'Array', 'boolean' : 'Boolean', '[object Date]' : 'Date', 'undefined' : 'Empty', '[object Error]' : 'Error', 'number' : 'Number', '[object null]' : 'Null', 'string' : 'String' }, TOSTRING = Object.prototype.toString; if (nameTypes[typeof o] || nameTypes[TOSTRING.call(o)] || (o ? 'object' : 'null')=='Number') { if (o.toString().indexOf('.')>-1) { return 'Double'; } //JavaScript only deals with doubles, not singles } if (o==null) { return 'Null'; } return nameTypes[typeof o] || nameTypes[TOSTRING.call(o)] || (o ? 'object' : 'null'); } var nInteger, nSingle; nInteger = parseInt(44); NSB.Print((44) + " is a/an " + TypeName(nInteger)); nSingle = parseFloat(99.44); NSB.Print((99.44) + " is a/an " + TypeName(nSingle));
Output
44 is a/an Integer 99.44 is a/an Double