zoukankan      html  css  js  c++  java
  • 16. js 判断变量类型,包括ES6 新类型Symbol

    相信大家在开发中遇到需要判断变量类型的问题,js变量按存储类型可分为值类型和引用类型,值类型包括Undefined、String、Number、Boolean,引用类型包括object、Array、Function,
    直接上辨别类型的封装函数

    function varType(n) {
        var typeStr = Object.prototype.toString.call(n);
        //var typeOfName = (typeof n);
        var typeName = '';
        switch (typeStr){
            case '[object String]':
                typeName = 'string';
                break;
           case '[object Number]':
               typeName = 'number';
               break;
           case '[object Boolean]':
               typeName = 'boolean';
               break;
           case '[object Undefined]':
               typeName = 'undefined';
               break;
           case '[object Object]':
               typeName = 'object';
               break;
           case '[object Array]':
               typeName = 'array';
               break;
           case '[object Null]':
               typeName = 'null';
               break;
           case '[object RegExp]':
               typeName = 'RegExp';
               break;
          case '[object Symbol]':
               typeName = 'symbol';
               break;
          case '[object JSON]':
               typeName = 'json';
               break;
          case '[object Math]':
               typeName = 'math';
               break;
          default:
               typeName = 'object';
         }
         return typeName;
    };
    console.log(varType("1"));
    console.log(varType(1));
    console.log(varType({}));
    console.log(varType([]));
    console.log(varType(function () {}));
    console.log(varType(null));
    console.log(varType(undefined));
    console.log(varType(true));
    console.log(varType(NaN));
    console.log(varType(Symbol()));
    console.log(varType(JSON));
    console.log(varType(Date));
    console.log(varType(Math));
    console.log(varType(RegExp()));
    

      

  • 相关阅读:
    Simple DirectMedia Layer常用API总结
    [游戏复刻] Super Mario Brothers(1985. Famicom)
    [游戏复刻] 2048(2014. Android)
    图的结构以及寻路算法的c实现
    散列查找的C实现
    【游戏编程从0开始】一、基本结构
    C++中const关键字用法总结
    C标准库常用函数概要
    字符串表达式计算器的设计
    初探数据结构
  • 原文地址:https://www.cnblogs.com/Lolita-web/p/10457127.html
Copyright © 2011-2022 走看看