Type detection

Karmagination provides a way to detect data types reliably as the native built-in typeof method have quite a few quirks.

Karma.isKarma( data )

Returns true if the object is an instance of Karmagination, false otherwise.

var a = Karma();
Karma.isKarma(a); // true

Karma.isGenericObject( data )

Returns true if the current data type is either Object, Array, Date or null, false otherwise.

var a = [];
var b = {};
var c = new Date();
var d = null;
 
Karma.isGenericObject(a); // true
Karma.isGenericObject(b); // true
Karma.isGenericObject(c); // true
Karma.isGenericObject(d); // true

Karma.isObject( data )

Returns true if the current data type is an Object, false otherwise.

var a = [];
var b = {};
var c = new Date();
var d = new Object();
 
Karma.isObject(a); // false
Karma.isObject(b); // true
Karma.isObject(c); // false
Karma.isObject(d); // true

Karma.isArray( data )

Returns true if the current data type is an Array, false otherwise.

var a = [];
var b = {};
var c = new Date();
var d = new Array();
 
Karma.isArray(a); // true
Karma.isArray(b); // false
Karma.isArray(c); // false
Karma.isArray(d); // true

Karma.isDate( data )

Returns true if the current data type is an instance of Date(), false otherwise.

var a = [];
var b = {};
var c = new Date();
var d = new Array();
 
Karma.isDate(a); // false
Karma.isDate(b); // false
Karma.isDate(c); // true
Karma.isDate(d); // false

Karma.isFunction( data )

Returns true if the current data type is a function, false otherwise.

var a = function(){};
var b = new Function();
 
Karma.isFunction(a); // true
Karma.isFunction(b); // true

Karma.isString( data )

Returns true if the current data type is a string, false otherwise.

var a = '';
var b = 'ABC';
var c = new String('ABC');
 
Karma.isString(a); // true
Karma.isString(b); // true
Karma.isString(c); // true

Karma.isNumber( data )

Returns true if the current data type is an integer or float, false otherwise.

var a = 1;
var b = 0.1;
var c = -1;
var d = -0.1;
var e = new Number(1);
 
Karma.isNumber(a); // true
Karma.isNumber(b); // true
Karma.isNumber(c); // true
Karma.isNumber(d); // true
Karma.isNumber(e); // true

Karma.isValue( data )

Returns true if the current data type is a string, integer or float, false otherwise.

var a = 1;
var b = 0.1;
var c = -1;
var d = -0.1;
var e = new Number(1);
var f = 'a';
var g = new String('a');
 
Karma.isNumber(a); // true
Karma.isNumber(b); // true
Karma.isNumber(c); // true
Karma.isNumber(d); // true
Karma.isNumber(e); // true
Karma.isNumber(f); // true
Karma.isNumber(g); // true

Karma.isBoolean( data )

Returns true if the current data type is a boolean, false otherwise.

var a = true;
var b = false;
var c = !null;
var d = !!undefined;
 
Karma.isBoolean(a); // true
Karma.isBoolean(b); // true
Karma.isBoolean(c); // true
Karma.isBoolean(d); // true

Karma.isDefined( data )

Returns true if the current data type inside a defined namespace is defined, false otherwise.

var a = true;
var b = false;
var c = null;
var d;
 
Karma.isDefined(window.a); // true
Karma.isDefined(window.b); // true
Karma.isDefined(window.c); // true
Karma.isDefined(window.d); // false
Karma.isDefined(d); // throws error (must be inside a defined namespace)
 
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki