/* call: isFunction(variable)
     This function will check if the parameter is a function
     returns true if so and false if it's not
*/
function isFunction(a) {
    return typeof a == 'function';
}

/* call: isNull(variable)
     This function will check if the parameter is null
     returns true if so and false if it's not
*/
function isNull(a) {
    return typeof a == 'object' && !a;
}

/* call: isNumber(variable)
     This function will check if the parameter is a number
     returns true if so and false if it's not
*/
function isNumber(a) {
    return typeof a == 'number' && isFinite(a);
}

/* call: isObject(variable)
     This function will check if the parameter is an object
     returns true if so and false if it's not
*/
function isObject(a) {
    return (a && typeof a == 'object') || isFunction(a);
}

/* call: isString(variable)
     This function will check if the parameter is a string
     returns true if so and false if it's not
*/
function isString(a) {
    return typeof a == 'string';
}

/* call: isUndefined(variable)
     This function will check if the parameter is undefined
     returns true if so and false if it's not
*/
function isUndefined(a) {
    return typeof a == 'undefined';
} 
