1
0
Fork 0
mirror of https://github.com/koalyptus/TableFilter.git synced 2024-05-05 08:03:17 +02:00
TableFilter/src/types.js
2016-05-08 15:26:52 +10:00

93 lines
1.8 KiB
JavaScript

import {root} from './root';
/**
* Types utilities
*/
const UNDEFINED = void 0;
export default {
/**
* Check if argument is an object or a global object
* @param {String or Object} v
* @return {Boolean}
*/
isObj(v) {
let isO = false;
if (typeof v === 'string') {
if (root[v] && typeof root[v] === 'object') {
isO = true;
}
} else {
if (v && typeof v === 'object') {
isO = true;
}
}
return isO;
},
/**
* Check if argument is a function
* @param {Function} fn
* @return {Boolean}
*/
isFn(fn) {
return (fn && fn.constructor == Function);
},
/**
* Check if argument is an array
* @param {Array} obj
* @return {Boolean}
*/
isArray(obj) {
return (obj && obj.constructor == Array);
},
/**
* Check argument is a string
* @param {String} val Value
* @returns {Boolean}
*/
isString(val) {
return Object.prototype.toString.call(val) === '[object String]';
},
/**
* Check argument is a number
* @param {Number} val
* @returns {Boolean}
*/
isNumber(val) {
return Object.prototype.toString.call(val) === '[object Number]';
},
/**
* Determine if argument is undefined
* @param {Any} o
* @return {Boolean}
*/
isUndef(o) {
return o === UNDEFINED;
},
/**
* Determine if argument is null
* @param {Any} o
* @return {Boolean}
*/
isNull(o) {
return o === null;
},
/**
* Determine if argument is empty (undefined, null or empty string)
* @param {Any} o
* @return {Boolean}
*/
isEmpty(o) {
return this.isUndef(o) || this.isNull(o) || o.length === 0;
}
};