变量的数据类型指的是声明变量赋值的时候,可以给这个变量赋哪些类型的值;

    ES约定的数据类型分为两大类

    1.基本类型:简单类型 - 5个

    1.数字类型(二进制、八进制、十进制、十六进制);

    二进制数字:0-1组成,0b开头的数字;

    var num1=0b110;

    八进制数字:0-7组成,0o开头的数字;

    var num2=0123;

    十进制数字:0-9组成,不需要开头;

    var num3=123;

    十六进制的数字:0-f, 0x开头;

    var num4=0x1f2;

    输出的时候都会转换成十进制输出;

    2.字符串的类型:添加引号(单双引号都可以)

    生活中的数字、字母、中文、特殊符号组成 —— string

    3.布尔类型:布尔类型只有两个值true和false;分别表示真和假 —— boolean

    4.null类型:空对象类型,ES里面特殊类型(如果一个值无法确定类型,可以设为null);

    5.undefined类型,变量未初始化,未赋值,属性不存在,ES里面的特殊类型;

    2.引用类型:复杂类型 - 1个 - object

    var arr = [“zhangsan” , “lisi” , “wangwu”]; //数组对象,对象类型

    六大数据类型的英文表示

    number / string / boolean / null / undefined / object

    二.检测变量的数据类型。

    1.typeof (typeof判断一个不存在的变量时,返回undefined)面试题

    2.toString

    toString判断类型的语法:Object.prototype.toString.call(需要判断的变量)

    1.检测变量类型的语法:typeof( 变量名 ) 或者 typeof 变量名 typeof后面的括号可以省略。

    console.log(typeofnum1); //number

    console.log(typeofstr1); //string

    console.log(typeofb1); //boolean

    console.log(typeofnull); //object 空对象类型,属于对象一类,特殊的

    console.log(typeofundefined); //undefined

    console.log(typeofarr); //object

    2.typeof返回的值又是什么类型?

    typeof 返回五个不同的值(number/boolean/string/object/undefined),返回的值的类型都是string格式

    console.log(typeofnum1); //number

    console.log(typeoftypeofnum1); //string

    console.log(typeoftypeofstr1); //string

    console.log(typeoftypeofb1); //string