toString()方法来识别数据类型

目前对于JavaScript而言有如下几种基本数据格式,分别为

Boolean
String
Number
undefined
null
Symbol

还有一种复杂的数据格式,为Object,一般在进行数据类型的判断时候,我之前一般采用的都是typeof的方法,这种方法对于stringboolean, number,undefined, 都可以非常准确获取类型,如下

typeof 32
"number"
typeof 'helloworld'
"string"
typeof true
"boolean"
typeof null
"object"

但是问题也来了,如何分辨出null和一般的JS对象呢,因为如果都用typeof的话,就无法准确识别出null和一般的JS对象,为了准确分别出每个数据类型,也就引出了如下的方式
Object.prototype.toString()
toString() 方法返回一个表示该对象的字符串,如果此方法在自定义对象中未被覆盖,toString() 返回 "[object type]",其中type是对象的类型,为了每个对象都能通过 Object.prototype.toString()来检测,需要以 Function.prototype.call()或者 Function.prototype.apply() 的形式来调用

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 4,207评论 0 13
  • "use strict";function _classCallCheck(e,t){if(!(e instanc...
    久些阅读 2,054评论 0 2
  • 前言:User-defined Aggregates,自定义聚合。聚合本身是指将一个group归为一个条目的行为比...
    Wallace_QIAN阅读 525评论 0 1
  • 来北京十多年,最喜欢这里的秋天。 北京的秋天,和南方相比,来得浓烈。南方的秋天,是淡淡的,稍微抹上一层彩色,但主体...
    虎儿胡同阅读 2,715评论 0 4
  • 一、概念 1、A/B测试的概念最初应用于网页,是一种流行的网页优化方法,可以用于增加转化率、注册率等指标。 2、测...
    IvanHung阅读 705评论 0 1