2 * http://pettanr.sourceforge.jp/test/type.html
\r
8 isObject : function(v) {
\r
9 return v !== null && typeof v === 'object';
\r
12 isFunction : function(v) {
\r
13 return typeof v === 'function';
\r
16 X.UA.IE && ( X.UA.IE < 5 || X.UA.MacIE ) ? (function(v){ return v && typeof v.length === 'number';}) :
\r
17 window['Array'] ? (new Function('v', 'return v instanceof Array;')) :
\r
18 (function(v){ return Object.prototype.toString.call(v) === '[object Array]';}),
\r
20 isBoolean : function(v) {
\r
21 return typeof v === 'boolean';
\r
23 isString : function(v) {
\r
24 return typeof v === 'string';
\r
26 isNumber : function(v) {
\r
27 return typeof v === 'number';
\r
29 isFinite : function(v){
\r
30 return X.Type.isNumber(v) && isFinite(v);
\r
34 X.UA.IE && ( X.UA.IE < 5 || X.UA.MacIE ) ? (function(v){ return v && v.tagName && v.all;}) :
\r
35 window['HTMLElement'] ? (new Function('v', 'return v instanceof HTMLElement')) :
\r
36 (function(v){ return v && v.nodeType === 1 && v.appendChild;}),
\r
38 isElementCollection : function(v) {
\r
39 return (Object.prototype.toString.call(v) === "[object HTMLCollection]");
\r
42 isNull : function(v) {
\r
45 isUndefined : function(v) {
\r
46 return typeof v === 'undefined';
\r
50 console.log( 'X.Core.Type' );
\r