blob: 47d620b07814b8fb43a9134d00336313367a7255 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
/**
* Test if it is an object and has no constructors.
*/
function isAlien(a) { return isObject(a) && typeof a.constructor != 'function' }
/**
* isArray?
*/
function isArray(a) { return isObject(a) && a.constructor == Array }
/**
* isBoolean?
*/
function isBoolean(a) { return typeof a == 'boolean' }
/**
* isFunction?
*/
function isFunction(a) { return typeof a == 'function' }
/**
* isNull?
*/
function isNull(a) { return typeof a == 'object' && !a }
/**
* isNumber?
*/
function isNumber(a) { return typeof a == 'number' && isFinite(a) }
/**
* isObject?
*/
function isObject(a) { return (a && typeof a == 'object') || isFunction(a) }
/**
* isRegexp?
* we would prefer to use instanceof, but IE/mac is crippled and will choke at it
*/
function isRegexp(a) { return a && a.constructor == RegExp }
/**
* isString?
*/
function isString(a) { return typeof a == 'string' }
/**
* isUndefined?
*/
function isUndefined(a) { return typeof a == 'undefined' }
/**
* isEmpty?
*/
function isEmpty(o) {
var i, v;
if (isObject(o)) {
for (i in o) {
v = o[i];
if (isUndefined(v) && isFunction(v)) {
return false;
}
}
}
return true;
}
/**
* alias for isUndefined
*/
function undef(v) { return isUndefined(v) }
/**
* alias for !isUndefined
*/
function isdef(v) { return !isUndefined(v) }
/**
* true if o is an Element Node or document or window. The last two because it's used for onload events
if you specify strict as true, return false for document or window
*/
function isElement(o, strict) {
return o && isObject(o) && ((!strict && (o==window || o==document)) || o.nodeType == 1)
}
/**
* true if o is an Array or a NodeList, (NodeList in Opera returns a type of function)
*/
function isList(o) { return o && isObject(o) && (isArray(o) || (o.item && o.tagName.toLowerCase() != "select")) }
|