JavaScript type.of() - 更具体的typeof()

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript type.of() - 更具体的typeof()相关的知识,希望对你有一定的参考价值。

var is={
	Null:function(a){
		return a===null;
	},
	Undefined:function(a){
		return a===undefined;
	},
	nt:function(a){
		return(a===null||a===undefined);
	},
	Function:function(a){
		return(typeof(a)==='function')?a.constructor.toString().match(/Function/)!==null:false;
	},
	String:function(a){
		return(typeof(a)==='string')?true:(typeof(a)==='object')?a.constructor.toString().match(/string/i)!==null:false;
	},
	Array:function(a){
		return(typeof(a)==='object')?a.constructor.toString().match(/array/i)!==null||a.length!==undefined:false;
	},
	Boolean:function(a){
		return(typeof(a)==='boolean')?true:(typeof(a)==='object')?a.constructor.toString().match(/boolean/i)!==null:false;
	},
	Date:function(a){
		return(typeof(a)==='date')?true:(typeof(a)==='object')?a.constructor.toString().match(/date/i)!==null:false;
	},
	HTML:function(a){
		return(typeof(a)==='object')?a.constructor.toString().match(/html/i)!==null:false;
	},
	Number:function(a){
		return(typeof(a)==='number')?true:(typeof(a)==='object')?a.constructor.toString().match(/Number/)!==null:false;
	},
	Object:function(a){
		return(typeof(a)==='object')?a.constructor.toString().match(/object/i)!==null:false;
	},
	RegExp:function(a){
		return(typeof(a)==='function')?a.constructor.toString().match(/regexp/i)!==null:false;
	}
};

var type={
	of:function(a){
		for(var i in is){
			if(is[i](a)){
				return i.toLowerCase();
			}
		}
	}
};

以上是关于JavaScript type.of() - 更具体的typeof()的主要内容,如果未能解决你的问题,请参考以下文章

of-type选择器的坑

nth-child,nth-last-child,only-child,nth-of-type,nth-last-of-type,only-of-type,first-of-type,last-of-

text nth-of-type last-of-type匹配不到选择器类型选择器#css

.dynamicType 已弃用。改用'type(of ...)'

TypeScript最大的目的是让程序员更具创造性

Input ‘filename‘ of ‘ReadFile ‘Op has type float32 that does not match expected type of string