js判断变量数据类型

2018-09-22  本文已影响16人  duans_

方案一

分为简单数据类型复杂数据类型两种情况来判断

function getVarType(param){
           var typeStr=typeof(param);
           var ret;
          // 复杂数据类型
           if(typeStr=='object'){
               if(param instanceof Array){
                  ret='Array';
               }
               if(param instanceof Object){
                   ret='Object';
               }
           }else{
               //简单数据类型
               ret=typeStr;
           }
           return ret;
        }

方案二

通过call()或apply()方法调用Object.prototype.toString()

 function getType(param) {
            var typeStr = Object.prototype.toString.call(param);
            var ret;
            switch (typeStr) {
                case '[object Object]':
                    ret = 'Object';
                    break;
                case '[object Array]':
                    ret = 'Array';
                    break;
                case '[object String]':
                    ret = 'String';
                    break;
                case '[object Number]':
                    ret = 'Number';
                    break;
                case '[object Boolean]':
                    ret = 'Boolean';
                    break;
                case '[object Function]':
                    ret = 'Function'
                    break;
            }
            return ret;
        }
上一篇 下一篇

猜你喜欢

热点阅读