// 判断一个数据类型的函数封装的方法,obj是用来接收传入的参数的function gettype(obj) {var type = typeof obj;if (type !== 'object') {return type;}//如果不是object类型的数据,直接用typeof就能判断出来//如果是object类型数据,准确判断类型必须使用Object.prototype.toString.call(obj)的方式才能判断return Object.prototype.toString.call(obj).replace(/^\[object (\S+)\]$/, '$1');   //.replace(/^\[object (\S+)\]$/, '$1');  主要是把  第一个对象去掉}

HTML文件实例

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>判断一个数据类型</title>
</head><body><h1>判断一个数据类型 </h1><h3>Object.prototype.toString.call(obj)</h3><script>// 分别输入测试var undf;var a = [];   //数组var b = "474";   //字符var c = new Object();   //对象var d = new Number(6)   //数字var e = NaN   //非数字,但是是数据类型var d=function(){};var f=Symbol("key") ;var g=null;var i=undefined;// 判断一个数据类型的函数封装的方法,obj是用来接收传入的参数的function gettype(obj) {var type = typeof obj;if (type !== 'object') {return type;}//如果不是object类型的数据,直接用typeof就能判断出来//如果是object类型数据,准确判断类型必须使用Object.prototype.toString.call(obj)的方式才能判断return Object.prototype.toString.call(obj).replace(/^\[object (\S+)\]$/, '$1');//.replace(/^\[object (\S+)\]$/, '$1');  主要是把  第一个对象去掉}console.log(gettype(a));console.log(gettype(b));console.log(gettype(c));console.log(gettype(e));console.log(gettype(d));console.log(gettype(f));console.log(gettype(g));console.log(gettype(i));// /function type(target) {var ret = typeof (target);var template = {//包装类、对象、数组"[object Number]": "number - object","[object String]": "string - object","[object Boolean]": "boolean - object","[object Object]": "object","[object Array]": "array"}//找出 nullif (target === null) {return null;}if (ret == "object") {var str = Object.prototype.toString.call(target);return template[str];} else {//原始值 和 functionreturn ret;}}console.log(11111111111111111111111111111111111111111)console.log(type(a));console.log(type(b));console.log(type(c));console.log(type(e));console.log(type(d));console.log(type(f));console.log(type(g));console.log(type(i));</script>
</body></html>

  

转载于:https://www.cnblogs.com/yuanjili666/p/11613257.html

【原生】封装一个判断数据类型的函数的方法,准确判断一个数据的类型相关推荐

  1. js封装一个判断数据类型的函数

    一.写在前面 今天看到一道面试题--用js手写一个判断数据类型的函数.然后我首先想到的就是通过if....else if .....else if...,但是这样写就会给面试官感觉特别Low.那我们来 ...

  2. Python 判断数据类型的函数

    #Python 判断数据类型的函数 可使用内置函数 isinstance() 函数来判断一个对象是否是一个已知的类型,类似 type(). 举例1 >>>arg=1234567 &g ...

  3. python判断数据类型是不是字典的方法

    这篇文章主要介绍python判断数据类型是不是字典的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! python的数据类型有:数字(int).浮点(float).字符串(s ...

  4. 分段函数返回字符c语言,C++对cin输入字符的判断及分段函数处理方法示例

    本文实例讲述了C++对cin输入字符的判断及分段函数处理方法.分享给大家供大家参考,具体如下: 这两个本来也不是什么问题,然而真正遇到还是有地方可以研究的.首先是C++对于cin输入的判断,有时候你定 ...

  5. 判断数据类型的5种方法

    1. typeof 可以判断数据类型,它返回表示数据类型的字符串(返回结果只能包括number,boolean,string,function,object,undefined): 可以使用typeo ...

  6. JS判断数据类型的5种方法

    我们先来了解一下JS中数据类型有哪些 基本数据类型(值类型):String.Number.boolean.null.undefined.symbol(es6新增的) 引用数据类型 (引用类型):obj ...

  7. GCC 编译时优化某一个或几个函数或者不优化某一个或几个函数

    有的时候我们会有这样的需求:不想让编译器优化某一个或几个函数.针对某一个或几个函数做设置特殊的优化等级. 以下有三种方法: __attribute((optimize("STRING&quo ...

  8. js 判断数据类型的四种方法

    1,typeof typeof 返回的数据类型有 undefined boolean (true,false) string symbol number function object 注意  typ ...

  9. java定义苹果类Apple_定义一个水果接口Fruit,里面定义一个表示吃水果的eat方法。定义一个苹果类Apple和一个橘子...

    importjava.util.Scanner;interfaceFruit{publicvoideat();//创建一个Fruit接口,里面包含一个eat方法}classAppleimplement ...

最新文章

  1. 百度某员工哀叹:身边的混子太多,坚持了一年,简直浪费生命!
  2. 【通知】有三AI新手入门群开放,欢迎新手们来加入
  3. iOS之深入解析Cocoapods的工作原理与源码分析
  4. 给指定的某个commit号加tag并推送
  5. 回击华为!高通:支持Sub-6GHz和毫米波双频段的5G基带才是真5G
  6. Jonit Bayesian 的推导
  7. Android内容提供者(读取手机联系人信息)
  8. 什么是基金转换?转换费用如何收取?
  9. UEditor编辑器保存数据到数据库
  10. 基础回顾:测井曲线划分油、气、水层
  11. unity简单的脚本 播放3D立体音效(近大远小效果)
  12. 青山绿水 峡谷奇观---野三坡之行(转)
  13. easyPOI和导入复杂excel的各种坑
  14. CStdioFile 追加文件内容
  15. Bootstrap 徽章
  16. 03-sketch基本工具使用
  17. Mellanox 网卡固件升级
  18. 21年浙江工业大学计算机考研经验帖
  19. 【奇巧淫技】python 助你每天早上八点自动发送天气预报邮件到QQ邮箱
  20. 怎样成为一名优秀的系统集成工程师

热门文章

  1. apue.h头文件内容
  2. Android NDK开发之 NEON使用介绍
  3. 2022考研计算机-数据库原理教程1-7章
  4. java中对于框架的理解_接触Java项目一周后对一些基本框架的理解 | 学步园
  5. 如何使用ant_从 0 开始,成为 Ant-Design Contributor
  6. kafka 主从同步入门
  7. flume hdfs sink 文件滚动策略
  8. AttributeError:type object ‘TFLiteConverterV2 ‘has no attribute ‘form_keras_model_file ‘
  9. 利用nginx+lua+redis实现反向代理方法教程
  10. 网络专业人员需要了解的物联网信息