zoukankan      html  css  js  c++  java
  • js-检测数据类型

    1.typeof

    • typeof检测出来的是一个字符串
    • 字符串中包含对应的类型
    • 局限性

        

     *   1. typeof null => "object"  但是null并不是对象
     *   2. 基于typeof无法细分出当前值是普通对象还是数组对象等,因为只要是对象数据类型,返回的结果都是"object"
    //数值类型
    let number = 1;
    console.log(typeof number) //=>'number'
    //字符串类型
    let number1 = '123';
    console.log(typeof number1) //=>'string
    //boolean类型
    let number3 = true; 
    console.log(typeof number3)' //=>'boolean'
    //null
    console.log(typeof null) //=>'object'
    //NaN
    console.log(typeof NaN)//=>'number'
    //undefined
    console.log(typeof undefined)//=>'undefined'
    //对象
    console.log(typeof {})//=>'object'
    //数组
    console.log(typeof [])//=>'object'
    //正则
    console.log(typeof /^/)//=>'object'
    //函数
    console.log(typeof function(){})//=>'function'

    注意:

    • 因为typeof检测的结果都是字符串,所以只要两个及以上同时检测,最后结果必然是"string"
     console.log(typeof typeof typeof []);
    //=> typeof [] => "object"
    //=> typeof "object" => "string"

    2.instantof

    用于检测某一值是什么类型的对象

    result = variable instanceof Constructor

    instanceof 运算符用来检测 constructor.prototype 是否存在于参数 object 的原型链上。

    3.constructor : 基于构造函数检测数据类型(也是基于类的方式)

    4.Object.prototype.toString.call() :检测数据类型最好的办法

  • 相关阅读:
    请简述APP(移动运用)在升级安装时候应该考虑的场景?
    订单怎么测试
    支付功能测试
    购物车测试方法
    Python xlrd模块读取Excel表中的数据
    对h5页面的测试方式
    selenium IDE的使用
    单表王五涨工资操作
    siri功能测试
    逻辑题
  • 原文地址:https://www.cnblogs.com/peilin-liang/p/12066762.html
Copyright © 2011-2022 走看看