判断 js 类型的方式

简介: 判断 js 类型的方式
+关注继续查看

1. typeof


可以判断出'string','number','boolean','undefined','symbol'

但判断 typeof(null) 时值为 'object'; 判断数组和对象时值均为 'object'


2. instanceof


原理是构造函数的 prototype 属性是否出现在对象的原型链中的任何位置


function A() {}

let a = new A();
a instanceof A     //true,因为 Object.getPrototypeOf(a) === A.prototype;


3. Object.prototype.toString.call()


常用于判断浏览器内置对象,对于所有基本的数据类型都能进行判断,即使是 null 和 undefined

Object.prototype.toString.call(null)//"[object Null]"
Object.prototype.toString.call(undefined)//"[object Undefined]"
Object.prototype.toString.call(Object)//"[object Function]"


4. Array.isArray()


用于判断是否为数组。


typeof运算符和instanceof运算符以及isPrototypeOf()方法的区别


typeof是一个运算符,用于检测数据的类型,比如基本数据类型null、undefined、string、number、boolean,以及引用数据类型object、function,但是对于正则表达式、日期、数组这些引用数据类型,它会全部识别为object


instanceof同样也是一个运算符,它就能很好识别数据具体是哪一种引用类型。它与isPrototypeOf的区别就是它是用来检测构造函数的原型是否存在于指定对象的原型链当中;


而isPrototypeOf是用来检测调用此方法的对象是否存在于指定对象的原型链中,所以本质上就是检测目标不同。

相关文章
|
1月前
|
JavaScript 数据安全/隐私保护
js 常用类型验证
js 常用类型验证
21 0
|
2月前
|
前端开发 JavaScript
前端基础 - JavaScript值Boolean类型的默认转换
前端基础 - JavaScript值Boolean类型的默认转换
15 0
|
3月前
|
JavaScript
js判断手机类型demo效果示例(整理)
js判断手机类型demo效果示例(整理)
|
3月前
|
JavaScript 前端开发
Javascript借用原型对象继承父类型方法
Javascript借用原型对象继承父类型方法
25 1
|
3月前
|
Web App开发 JSON JavaScript
JS常见的报错类型
JS常见的报错类型
|
4月前
|
前端开发 JavaScript 开发者
JavaScript类型、值和原生函数大揭秘, 前端开发者必看!(下)
JavaScript类型、值和原生函数大揭秘, 前端开发者必看!(下)
|
4月前
|
前端开发 JavaScript 安全
JavaScript类型、值和原生函数大揭秘, 前端开发者必看!(上)
JavaScript类型、值和原生函数大揭秘, 前端开发者必看!
|
4月前
|
JavaScript 前端开发
什么是 JavaScript 中的包装类型?
什么是包装类型? 在 JavaScript 中,基本类型是没有属性和方法的,但是为了便于操作基本类型的值,在调用基本类型的属性或方法时 JavaScript 会在后台隐式地将基本类型的值转换为对象,如:
|
4月前
|
JavaScript
TypeScript 与 JS 中类型首字母大小写区别(String、string、Number、number、Boolean、boolean ...)
TypeScript 与 JS 中类型首字母大小写区别(String、string、Number、number、Boolean、boolean ...)
93 0
|
4月前
|
Web App开发 JavaScript
JS 获取当前浏览器类型(IE、Chrome、Edge、Firefox、Opera、UC、QQ)
JS 获取当前浏览器类型(IE、Chrome、Edge、Firefox、Opera、UC、QQ)
445 0
热门文章
最新文章
热门文章
最新文章
相关产品
云迁移中心
推荐文章
更多