javascript 判断数据类型的几种方法
一、typeof 直接返回数据类型字段,但是无法判断数组、null、对象

typeof 1
"number"typeof NaN
"number"typeof "1"
"string"typeof true
"boolean"typeof undefined
"undefined"typeof null
"object"typeof []
"object"typeof {}
"object"

其中 null, [], {}都返回 "object"

二、instanceof 判断某个实例是不是属于原型

// 构造函数
function Fruit(name, color) {this.name = name;this.color = color;
}
var apple = new Fruit("apple", "red");// (apple != null)
apple instanceof Object  // true
apple instanceof Array   // false

三、使用 Object.prototype.toString.call()判断

call()方法可以改变this的指向,那么把Object.prototype.toString()方法指向不同的数据类型上面,返回不同的结果

Object.prototype.toString.call(1)
"[object Number]"Object.prototype.toString.call(NaN);
"[object Number]"Object.prototype.toString.call("1");
"[object String]"Object.prototype.toString.call(true)
"[object Boolean]"Object.prototype.toString.call(null)
"[object Null]"Object.prototype.toString.call(undefined)
"[object Undefined]"Object.prototype.toString.call(function a() {});
"[object Function]"Object.prototype.toString.call([]);
"[object Array]"Object.prototype.toString.call({});
"[object Object]"

最后我们可以定义一个完美的判断数据类型的方法 _typeof()

function _typeof(obj){var s = Object.prototype.toString.call(obj);return s.match(/\[object (.*?)\]/)[1].toLowerCase();
};_typeof([12,3,343]);
"array"_typeof({name: 'zxc', age: 18});
"object"_typeof(1);
"number"_typeof("1");
"string"_typeof(null);
"null"_typeof(undefined);
"undefined"_typeof(NaN);
"number"_typeof(Date);
"function"_typeof(new Date());
"date"_typeof(new RegExp());
"regexp"

javascript 判断数据类型的几种方法相关推荐

  1. JavaScript判断数据类型有几种方法,以及它们的区别

    JavaScript有五种数据判断类型方法: typeof instanceof constructor Object.prototype.toString.call()

  2. javascript 判断数据类型的几种方法 1

    1.typeof 类型判断 缺点:无法区分null .对象.数组,Map,Set,WeakMap,WeakSet.RegExp等 注意:通过构造函数创建的变量typeof 后是都是object var ...

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

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

  4. js 判断数据类型的几种方法

    粗体判断js中的数据类型有一下几种方法:typeof.instanceof. constructor. prototype. $.type()/jquery.type(),接下来主要比较一下这几种方法 ...

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

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

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

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

  7. html数据类型判断,JS中判断数据类型的几种方法

    1⃣️首先我们来了解一下js中的数据类型 1.基本数据类型:Undefined.Null.Boolean.Number.String(值类型) 2.复杂数据类型:Object(引用类型) (值类型和引 ...

  8. JS-循环清空对象 判断数据类型的5种常用方法

    应用场景:一个页面具有大量数据录入功能,在数据录入保存成功之后,需要刷新页面,即清空所有的数据.因为我把所有的字段定义到一个对象中,所以要清空这个对象,如果字段少,可以直接赋值清空,但是数据多的时候, ...

  9. JavaScript判断数据类型的方法

    JavaScript判断数据类型的方法 1 数据类型有哪些? 2 判断JavaScript数据类型的方法 2.1 typeof 2.2 instanceof 2.3 constructor 2.4 t ...

  10. JavaScript 判断数据类型

    JavaScript 判断数据类型 首先JavaScript基本数据类型有:number null undefined string boolean es6以后还新增了bigint和symbol (上 ...

最新文章

  1. window下启动nexus出错Unsupported major.minor version 51
  2. Mybatis 强大的结果映射器ResultMap
  3. 拖延不是你的锅,全是基因惹的祸
  4. 排队五小时才能吃上一口的Popeyes,要借阿里云数据中台10年内开足1500家门店
  5. java利己线程_java利己线程 | 学步园
  6. 项目中的设计模式【工厂方法模式】
  7. Linux-2.6.21的负载均衡
  8. Cocos Creator + TiledMap制作瓦片地图部分经验总结
  9. 思科Cisco Telnet(三种认证方式)
  10. 机械硬盘型号里面各项参数解读
  11. Discuz修改导读设置,显示更多热帖和精华帖
  12. 植物野外识别速查图鉴
  13. 粉屏门又一次显示出了苹果的傲慢
  14. js 监听键盘的enter键
  15. 企业批量寄件快递教程
  16. 模型基础——模型与材质
  17. z-blog漏洞php,zblog1.51 php版GetShell漏洞
  18. php 六边形 属性图 能力数值图,详解基于 Canvas 手撸一个六边形能力图
  19. 【转】C++多继承的细节
  20. 支付宝CTO李静明:打造严谨的互联网研发文化

热门文章

  1. 手机站的拨打电话和发短信
  2. Oracle 恢复删除的表
  3. 制作chrome插件
  4. TCP/IP模型各个层次的功能和协议
  5. 两种预处理命令的写法的区别
  6. rails关于utf8问题-------------------utf8申明必须置顶
  7. JavaEE基础(六)
  8. 用 FragmentManager 替换时使用 GoogleMaps 崩溃 app
  9. Linux串口编程详解(转)
  10. 用友CDM系统“货位间商品移库单(一步)”表体增加“货位可用数量”字段,根据表头的选择的货位自动带出数值...