js中判断数据类型的方法
JS中判断数据类型的方法:
使用typeof操作符。
对一个值使用 typeof 操作符可能返回下列某个字符串,返回的类型都是字符串形式。
(1) undefined:如果这个值未定义
(2) boolean:如果这个值是布尔值
(3) string:如果这个值是字符串
(4) number:如果这个值是数值
(5) object:如果这个值是对象或null
(6) function:如果这个值是函数
需要注意:typeof不适合用于判断是否为数组。当使用typeof判断数组和对象的时候,都会返回object。
可以使用isArray()来判断是否为数组。
instanceof
instanceof 运算符用来判断一个构造函数的prototype属性所指向的对象是否存在另外一个要检测对象的原型链上。需要区分大小写。
简单的来说,instanceof 用于判断一个变量是否某个对象的实例。
例:var arr = new Array( );
alert(arr instanceof Array); // 返回true
需要注意的是,instanceof只能用来判断对象和函数,不能用来判断字符串和数字等。判断它是否为字符串和数字时,只会返回false。
constructor
constructor 属性返回对创建此对象的数组函数的引用。
在JavaScript中,每个具有原型的对象都会自动获得constructor属性。
例:
以下代码中的[native code],表示这是JavaScript的底层内部代码实现,无法显示代码细节。
// String
var str = “字符串”;
alert(str.constructor); // function String() { [native code] }
alert(str.constructor === String); // true
// Array
var arr = [1, 2, 3];
alert(arr.constructor); // function Array() { [native code] }
alert(arr.constructor === Array); // true
// Number
var num = 5;
alert(num.constructor); // function Number() { [native code] }
alert(num.constructor === Number); // true
prototype
以上三种方法多少都会有一些不能判断的情况。为了保证兼容性,可以通过Object.prototype.toString方法,判断某个对象值属于哪种内置类型。
需要注意区分大小写。
alert(Object.prototype.toString.call(“字符串”) === ‘[object String]’) -------> true;
alert(Object.prototype.toString.call(123) === ‘[object Number]’) -------> true;
alert(Object.prototype.toString.call([1,2,3]) === ‘[object Array]’) -------> true;
alert(Object.prototype.toString.call(new Date()) === ‘[object Date]’) -------> true;
alert(Object.prototype.toString.call(function a(){}) === ‘[object Function]’) -------> true;
alert(Object.prototype.toString.call({}) === ‘[object Object]’) -------> true;
js中判断数据类型的方法相关推荐
- 判断js中的数据类型的方法
在 判断js中的数据类型 我们通常会使用typeOf()方法, typeof 2 输出 number typeof null 输出 ...
- js中判断数据类型的几种实用方法
前言 最近项目中有不少地方需要判断数据类型,但是判断数据类型也有好几种方法,并且每种方法判断的数据类型也有局限性,所以想总结一下,方便以后查阅. 分别是 typeof ,instanceof,Obje ...
- html数据类型判断,JS中判断数据类型的几种方法
1⃣️首先我们来了解一下js中的数据类型 1.基本数据类型:Undefined.Null.Boolean.Number.String(值类型) 2.复杂数据类型:Object(引用类型) (值类型和引 ...
- javaScript中判断数据类型的方法
目录 一.javaScript数据类型 二.javaScript判断数据类型的方法 1.使用typeof 2.使用instanceof 3.使用Object.prototype.toString.ca ...
- JS中判断NaN的方法
var tmp = 0/0; if (isNaN(tmp)){ alert( "NaN" ); }
- 分享一波很全的 JS 判断数据类型的方法
分享一波很全的 JS 判断数据类型的方法 干货满满,很常用也很有用的一波方法整理,分享给需要的小伙伴们. 偷偷说一句,小肉包之前整理的没有这么简洁和全面,后面小肉包的男朋友又帮忙加工润色了一下,现在看 ...
- JavaScript 判断数据类型的方法
文章目录 1.javascript 中的数据类型 2.`typeof` 返回 变量的数据类型 3.`instanceof ` :复杂数据类型的判断 3.1.instanceof 原理分析(初学者跳过) ...
- js 数据类型_js中检测数据类型的方法汇总
回顾一下js中数据类型分为两大类,基础类型和引用数据类型,主要有: 基本数据类型 Number String Boolean Null Undefined Symbol 复杂数据类型 Array Fu ...
- [转载]如何判断js中的数据类型
原文地址:如何判断js中的数据类型作者:最初的你 如何判断js中的数据类型:typeof.instanceof. constructor. prototype方法比较 如何判断js中的类型呢,先举几个 ...
最新文章
- ArrayList和Vector有什么区别?
- 不明白JVM虚拟机还怎么面试
- 静态页面访问缓慢的问题
- 【Python】url基础:网络爬虫技术
- python 惰性序列_讨论 - 廖雪峰的官方网站
- C#创建https请求并使用pfx证书
- ckeditor5加字数_ckeditor字数限制
- redis集群扩容和缩容_深入理解Redis Cluster集群
- mybatis-generator 逆向生成工具(实体、dao、sql)
- sizeof string
- 移动应用广告盈利-KeyMob移动广告聚合平台
- 无人机未来有一大波创富平台
- 生活中计算机自动控制原理的应用,《自动控制原理》虚拟实验系统在教学中的应用...
- numpy读取txt文件
- 飞行控制系统中高度的表示
- LA 4487 Exclusive-OR
- GitHub上AI岗位面试笔记(机器学习算法/深度学习/ NLP/计算机视觉)
- 卡方检验x2检验(chi-square test)
- 作文总结思维导图怎么画?分享作文类型总结思维导图模板
- 数据库 —— mycat 代理