资讯专栏INFORMATION COLUMN

js 数据类型检测

Jochen / 930人阅读

摘要:中复杂数据类型使用检测操作符返回一个字符串表示未经求值的操作数的类型。是一个操作符而不是函数圆括号尽管可以使用但不是必需的。或者均可以使用检测用来检测引用类型知道一个值是什么类型的对象。只适用于构造函数创建返回的复杂对象和实例。

5种基本数据类型:Undefined、Null、Boolean、Number和String。
1中复杂数据类型:Object

使用typeof检测

typeof操作符返回一个字符串,表示未经求值的操作数的类型。

typeof可能的返回值:

"undefined"——如果这个值未定义;

"boolean"——如果这个值是布尔值;

"string"——如果这个值是字符串;

"number"——如果这个值是数值;

"object"——如果这个值是对象或 null;

"function"——如果这个值是函数。

注意事项:
typeof null 返回 object。
typeof 是一个操作符而不是函数,圆括号尽管可以使用,但不是必需的。
//typeof str 或者 typeof(str) 均可以

使用instanceof检测

用来检测引用类型:知道一个值是什么类型的对象。返回true/false。

所有引用类型的值都是 Object 的实例。

如果使用 instanceof 操作符检测基本类型的值,则该操作符始终会返回 false,因为基本类型不是对象。但是使用new关键字构造基本数据的包装对象的实例时instanceof操作符也会返回true。(instanceof只适用于构造函数创建返回的复杂对象和实例。)

用instanceof检测undefined和null是不是Object实例时,返回false。

    function Person(){}
    function Student(){}
    Student.prototype = new Person();
    var John = new Student();
    console.log(John instanceof Student); // true
    console.log(John instancdof Person);  // true
    console.log(John instancdof Object);  // true
    var a;
    
    
    用instanceof检测undefined和null是不是Object实例时,返回false。
    typeof a;    //"undefined"
    a instanceof Object;  //false
    var b = null;    
    typeof b;    //"object"
    b instanceof Object;    //false
使用constructor检测

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/50040.html

相关文章

  • JS类型(三):JS类型检查

    摘要:正文一基本类型检测为什么说是基本类型检测对于这三种类型经常用到的基本类型检测是正确的。为什么说是更好的检测方法上面的两种方法要么是只能检测基本类型,要么是只能检测引用类型,还存在不支持检测的情况。 前言 前两篇文章主要是一直在讨论JS类型的转换,那么怎么才能检测JS的数据类型呢?检测数据类型在工程中经常用到,常见的JS类型检测有三种方法: 1. typeof 2. instanceof...

    ad6623 评论0 收藏0
  • JS专题之数据类型类型检测

    摘要:运算符可以用来检测某个构造函数的属性是否存在于另外一个要检测对象的原型链上。使用方法可以获取到变量的准确的数据类型就能解决基本包装类型的检测错误和的检测不安全。 本文共 1750 字,读完只需 7 分钟 数据类型有哪些? ECMAScript 的数据类型分为简单数据类型(也被称为基本数据类型,原始数据类型): Undefined Null String Number Boolean ...

    since1986 评论0 收藏0
  • js检测数据类型的四种方法

    摘要:中检测数据类型的四种方法前言先说一下中的数据类型有哪几类主要分类两大类型,基本类型和引用类型。用法结果这样一看,似乎能满足的所有数据类型,那我们看下继承之后是否能检测出来结果小结可以看出,可用于检测所有的数据类型。 js中检测数据类型的四种方法 前言 先说一下JavaScript中的数据类型有哪几类?主要分类两大类型,基本类型和引用类型。 showImg(https://segment...

    darryrzhong 评论0 收藏0
  • js基础--数据类型检测的相关知识

    摘要:话不多说,我们开干,加油干货满满今天,我们一起学习一下中的数据类型检测相关的知识,也顺便做个总结。基本数据类型又包括,还有一个新增的,我们这先不说。 欢迎访问我的个人博客:http://www.xiaolongwu.cn 前言 最近工作有点忙,好几天都没更新技术博客了。 周末起床打开有道云笔记,发现自己的博客todolist里躺了一堆只有名字的文件。 话不多说,我们开干,加油! 干货满...

    MangoGoing 评论0 收藏0
  • javascript基础篇:JS中的数据类型检测专题

    摘要:用来检测数据类型的运算符语法虽然是基本数据类型值,但是它属于空对象指针,检测的结果是对象使用有自己的局限性,不能具体细分当前的值是数组还是正则也就是不能细分对象类型的值先算检测某一个实例是否属于某各类的实例构造函数使用检测某个值是否属于某 typeof 用来检测数据类型的运算符语法:typeof[value] typeof 12 //=>number typeof NaN //=>nu...

    Honwhy 评论0 收藏0

发表评论

0条评论

Jochen

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<