一个判断变量类型的小轮子

js代码很简单,关键要看懂里面一些实质的东西,这里就只是贴一些代码,仅供参考;javascript

(function(root,factory){
	if( typeof module != 'undefined' && ( typeof module === 'object' ||  typeof module.export === 'object')){
		module.export = factory();
	}else{

		root.$ = root.DN = factory();
	}
})(this, function(){
	var DN = {
		toType:function(obj){
			if(obj == null ){
    		   return obj+'';
    	    }
            return typeof obj === "object" || typeof obj === "function" ?class2type[Object.prototype.toString.call(obj)] || 'object' : typeof obj;
		}
	};
	var class2type = {};
	"Boolean Number String Function Array Date RegExp Object Error Null Undefined".split(' ').map(function(item, index) {
        class2type["[object " + item + "]"] = item.toLowerCase();
    });

    return DN;
})

如上的代码放到1.js文件中,在HTML中直接引用该文件,则就可使用toType()方法了,简单方便:html

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>判断类型</title>
</head>

<body>
    <!-- 	架构
	一、若是是基本类型,就使用typeof;
	二、若是是引用类型就使用 toString;
	三、统一类型的大小写; -->
	<script type="text/javascript" src="./1.js"></script>
    <script type="text/javascript">
    	console.log($.toType({}));
    </script>
</body>

</html>
相关文章
相关标签/搜索