VarType: Difference between revisions
Jump to navigation
Jump to search
(→Description: add additional vartypes) |
(Add javascript snippet and fixed text spaces) |
||
Line 46: | Line 46: | ||
|} | |} | ||
== Example == | == Example (Basic) == | ||
<pre> | <pre> | ||
Line 56: | Line 56: | ||
nSingle = CSNG(99.44) | nSingle = CSNG(99.44) | ||
Print 99.44 & "isVarType" & VarType(nSingle) | Print 99.44 & "isVarType" & VarType(nSingle) | ||
</pre> | |||
== Example (JavsScript) == | |||
<pre> | |||
// VarType Example | |||
/* VarType returns variable type as an integer */ | |||
function VarType(o) { | |||
var varTypes= { | |||
'undefined' : 0, | |||
'[object null]' : 1, | |||
'number' : 2, | |||
'[object Date]' : 7, | |||
'string' : 8, | |||
'[object Error]' : 10, | |||
'boolean' : 11, | |||
'[object Array]' : 8192 | |||
}, | |||
TOSTRING = Object.prototype.toString; | |||
if (varTypes[typeof o] || varTypes[TOSTRING.call(o)] || (o ? 'object' : 'null')==2) { | |||
if (o.toString().indexOf('.')>-1) { return 5; } //JavaScript only deals with doubles, not singles | |||
} | |||
if (o==null) { return 1; } | |||
return varTypes[typeof o] || varTypes[TOSTRING.call(o)] || (o ? 'object' : 'null'); | |||
}; | |||
var nInteger, nSingle; | |||
nInteger = parseInt(44); | |||
NSB.Print nInteger.toString() + " is VarType " + VarType(nInteger); | |||
nSingle = parseFloat(99.44); | |||
NSB.Print nSingle.toString() + " is VarType " + VarType(nSingle); | |||
</pre> | </pre> | ||
Revision as of 03:00, 19 May 2013
VarType(variable)
Description
VarType returns an integer that indicates the type of a variable. The required parameter, variable, is any variable that doesn't contain a user-defined type.
When variable is an array, the value returned is equal to the array constant plus the constant that specifies the element-type.
Table 25: VarType return values
Constant | Value | Description |
---|---|---|
vbEmpty | 0 | Empty |
vbNull | 1 | Null |
vbInteger | 2 | Integer |
vbLong | 3 | Long |
vbSingle | 4 | Single-precision floating-point |
vbDouble | 5 | Double-precision floating-point |
vbCurrency | 6 | Currency |
vbDate | 7 | Date |
vbString | 8 | String |
vbObject | 9 | Object |
vbError | 10 | Error |
vbBoolean | 11 | Boolean |
vbVariant | 12 | Variant |
vbDataObject | 13 | Data-access Object |
vbByte | 17 | Byte |
vbArray | 8192 | Array |
Example (Basic)
Rem VarType Example 'VarType returns variable type as an integer Dim nInteger, nSingle nInteger = CInt(44) Print 44 & " is VarType " & VarType(nInteger) nSingle = CSNG(99.44) Print 99.44 & "isVarType" & VarType(nSingle)
Example (JavsScript)
// VarType Example /* VarType returns variable type as an integer */ function VarType(o) { var varTypes= { 'undefined' : 0, '[object null]' : 1, 'number' : 2, '[object Date]' : 7, 'string' : 8, '[object Error]' : 10, 'boolean' : 11, '[object Array]' : 8192 }, TOSTRING = Object.prototype.toString; if (varTypes[typeof o] || varTypes[TOSTRING.call(o)] || (o ? 'object' : 'null')==2) { if (o.toString().indexOf('.')>-1) { return 5; } //JavaScript only deals with doubles, not singles } if (o==null) { return 1; } return varTypes[typeof o] || varTypes[TOSTRING.call(o)] || (o ? 'object' : 'null'); }; var nInteger, nSingle; nInteger = parseInt(44); NSB.Print nInteger.toString() + " is VarType " + VarType(nInteger); nSingle = parseFloat(99.44); NSB.Print nSingle.toString() + " is VarType " + VarType(nSingle);
Output
44 is VarType 2 99.44 is VarType 4