JS基础系列:数据类型

117 阅读1分钟

JS中变量没有类型的概念,值才有类型。

JS内置7种类型包括:

undefined null 、string number boolean、 object 、symbol(ES6新增)

补充知识点:

object是个"复杂类型",其他称"基本类型";

object的子类型有:Function、Date、Error、RegExp、Array;

类型判断的方法有如下3种:

  • typeof

    return:字符串。可能的值包括除null之外的所有内置类型。[typeof null === ‘object’]

    usage:

    // xx 表示要判断的那个变量
    typeof xx
    
  • instanceof

    return:boolean值

    usagae:

    // xx 表示要判断的那个变量;
    // yy 可能的值包括所有object的子类型,及Object本身
    xx instancdof yy 
    
  • Object.prototype.toString.call(xx)

    return:字符串。 形如 "[object Array]", 第二个值包括所有object的子类型

    usage:

    // xx 表示要判断的那个变量;
    Object.prototype.toString.call(xx)
    
归纳总结:

typeof 主要用来判断js内置的基本类型;

instanceof、Object.prototype.toString.call 主要用来判断复杂类型;

判断一个变量 是否声明 或 是否被赋值的常用方法:

// xx 表示要判断的那个变量
if (typeof xx === 'undefined')