TS 对于原始数据类型的判断方法

22 min read

判断一个数据类型是否是原始数据类型,可以通过以下几种方法:

  1. 使用typeof操作符:typeof是JavaScript的运算符,可以返回一个变量的数据类型字符串。原始数据类型包括undefined、string、number、boolean、symbol。可以使用typeof操作符判断一个变量的类型,如:

    typeof "Hello"  // 返回 "string"
    typeof 123   // 返回 "number"
    typeof true  // 返回 "boolean"
    typeof undefined  // 返回 "undefined"
    
  2. 使用instanceof操作符:instanceof是JavaScript的关键字,可以用于判断一个变量是否属于某个构造函数的实例。原始数据类型都是以相应的构造函数的实例形式存在的,所以可以使用instanceof操作符判断一个变量是否是原始数据类型的实例,如:

    "Hello" instanceof String  // 返回 false,因为"Hello"是基本类型的字符串,不是String类的实例
    123 instanceof Number  // 返回 false,因为123是基本类型的数字,不是Number类的实例
    true instanceof Boolean  // 返回 false,因为true是基本类型的布尔值,不是Boolean类的实例
    undefined instanceof Undefined  // 返回 false,因为undefined不是一个构造函数
    
  3. 使用Object.prototype.toString方法:Object.prototype.toString方法会返回对象的类型字符串,对于原始数据类型,该方法会返回对应的类型字符串,如"[object String]"、"[object Number]"等。可以使用Object.prototype.toString方法判断一个变量是否是原始数据类型,如:

    Object.prototype.toString.call("Hello") === "[object String]"  // 返回 true
    Object.prototype.toString.call(123) === "[object Number]"  // 返回 true
    Object.prototype.toString.call(true) === "[object Boolean]"  // 返回 true
    Object.prototype.toString.call(undefined) === "[object Undefined]"  // 返回 true
    

通过上述方法,可以判断一个变量是否是原始数据类型,并进行相应的处理。