JS区分数据类型

JS中的typeof方法可以查看数据的类型,如下:

1 console.log(typeof 2); // number
2 console.log(typeof "2"); // string
3 console.log(typeof true); // boolean
4 console.log(typeof [2]); // object
5 console.log(typeof {name:2});// object
6 console.log(typeof function(){return 2});// function
7 console.log(typeof new Date());// object
8 console.log(typeof null); // object
9 console.log(typeof undefined);// undefined

但typeof只能区分数字、字符串、布尔值、方法及undefined,其他的对象、数组、日期、null等均为object,还是没能区分开,

我们可以利用Object.prototype.toString.call实现。

 1 var getType = Object.prototype.toString;
 2 var res = getType.call(2);
 3 res = getType.call("2");
 4 res = getType.call(true);
 5 res = getType.call([2]);
 6 res = getType.call({name:2});
 7 res = getType.call(function(){});
 8 res = getType.call(new Date());
 9 res = getType.call(null);
10 res = getType.call(undefined);

输出结果依次为:

1 [object Number]
2 [object String]
3 [object Boolean]
4 [object Array]
5 [object Object]
6 [object Function]
7 [object Date]
8 [object Null]
9 [object Undefined]

这样就能具体区分JS中的数据类型了。

原理请参考这里

原文地址:https://www.cnblogs.com/jyughynj/p/9749712.html

时间: 2024-10-12 04:11:09

JS区分数据类型的相关文章

JS的数据类型及转换(还是基础的东西)

朋友说我这是再自娱自乐,我只想说,你说的对????????!其实也不然,这算是我对自己的基础的一次彻底性的重新梳理以及闲的无聊,找点显得比较有意义的事情做罢了. 回归正题,在JS中,数据类型有哪些呢?看看下图 字符串.数字.布尔类型就不细说了,这些大家都懂,说一些大家关注度比较少的东西...... NULL和Undefined: NULL和Undefined一样都只有一个值,并且都是他们本身,但是有一点特别的有意思,那就是: 在W3C里事这样解释这两个东西的: 值 undefined 实际上是从

JS的数据类型

JS的数据类型大致分为两大块: 1.基本类型 2.引用类型 基本类型分为:number bolean string undefined null 引用类型分为:原生对象 内置对象 宿主对象

node.js对象数据类型

在这里复习下前端JS的数据类型:前端JS中的数据类型: 1.基本/原生/值类型 string.number.boolean.null.undefined 2.引用/对象类型    ES对象类型:String.Number.Boolean.Math.Date.RegExp.Object.Function.Error,Array,Global对象.    BOM对象类型:window.document.screen.history.location.navigator.event...    DOM

JS中数据类型及原生对象简介

js是一种专门设计用来给网页增加交互性的编程语言,它的技术体系包含了一下几个方面: 1.JavaScript核心语言定义:包括数据类型,变量,常量,运算符,语句等. 2.原生对象和内置对象 3.浏览器对象BOM 4.文档对象类型DOM 5.事件处理模型 将js添加到文档中的方法有三种: 1.内嵌式 2.将js源文件通过<script>元素的src属性连接到XHTML文档中 3.脚本包含在XHTML事件处理属性中,例如onclick js的数据类型分为原始数据类型和引用数据类型: 一.原始数据类

js的数据类型具体分析

js的数据类型分析 1.基本类型:string·····number···boolean···null···underfied 2.引用类型:·····objck 复习·····点·运算·····xxx.sss····xxx是对象····sss.是方法和属性. 任何数据类型都是拥有属性和方法的 字符串  string····var   st="hello word" 字符串的定义 1 var s="st" 2.st.new string ("hello&q

JS中数据类型、原始数据、内置对象、包装类型对象、typeof

JS中数据类型.内置对象.包装类型对象.typeof关系  https://segmentfault.com/a/1190000018275384 JavaScript 数据类型和数据结构   https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Data_structures 原始数据 https://developer.mozilla.org/zh-CN/docs/Glossary/Primitive 原文地址:https://www

js显示数据类型的转换

js中数据类型装换 ### 显示数据类型的转换 typeof:能防回六中操作类型的数据:Number, String, Boolean, Objecet, undefined, function ~JavaScript var a = 1; //conloe.log(typeof(a)) 值为Number var a = []; //conloe.log(typeof(a)) 值为Object var a = {}; //conloe.log(typeof(a)) 值为Object var a

原型模式故事链(3)--JS的数据类型、以及区别、区分、转化

上一章--原型链讲解:传送门:https://segmentfault.com/a/11... 在上一章讲解原型链时提到了:所有的引用类型都有一个_proto_属性,称之为隐式原型.那么引用类型是什么鬼? 尽量简单的讲解一下javascript中的数据类型:在JS中有两大数据类型:1.基本数据类型,也称为值类型.2.复杂数据类型,也成为引用类型 . 值类型:Number.String.Boolean.Null.Undefined引用类型:Object.Array.Function 所以JS一共有

js 区分undefined、null、基本数据类型、引用类型、函数、数组

<script> function lol(type) { if(typeof type == "undefined") { alert("undefined"); } else if(typeof type == "object") { if(new String(type) == "null") { alert(null); } else { if(typeof type.valueOf() == "