六种数据类型

基本数据类型:

  • String 字符串类型
    用 单引号’’,双引号””都可表示字符串

字符串中可使用”\”作为转义字符,eg:”\?” 表示字符 “?”

  • Number 数值类型

infinity表示正无穷,-infinity表示负无穷,NaN表示不是一个数字(Not a Number),typrof NaN值为number
只有一种数字类型,即浮点数

  • Boolean 布尔类型

Boolean只有两个值,ture和false
值为false:undefined、null、false、0、NaN、’’/“”

  • Null 空值

Null表示空对象,即声明对象未赋值
typeof null的值为object

  • Undefined 未定义

Undefined表示未赋值的变量

引用数据类型:

  • Object 对象类型

可使用typeof来获取值的数据类型


强制类型转换

转String类型:

  • 调用被转换数据类型的toString方法

    1. var a = 123; //a类型为number
    2. var b = a.toString(); //b类型为string,a仍为number类型,不影响a的类型

    null 和 undefined 无 toString 方法

  • 调用String函数,将a转换为字符串

    1. a = string(a); //a类型为string

转Number类型:

  • 调用Number()函数,将a转换为Number类型

    1. var a = "123";
    2. a = Nunber(a);

    值含非数字则转为NaN;
    值为空或者空格转为0;
    布尔型转数字:true—>1,false—>0;
    Null类型转为0;
    Undefined转为NaN

  • 调用parseInt()/parseFloat函数,将a转换为Number类型(整数/浮点数) ```javascript var a = “123abc”; a = parseInt(a); //a类型为number,值为123

var a = “123.456.789”; a = parseFloat(a); //a类型为number,值为123.123

  1. parseInt()函数从左往右读取数字,直到遇见第一个非数字为止;<br />parseFloat()函数从左往右读取数字,遇见小数点继续往右读取数字,直至遇见非数字为止。<br />对于非string类型,这两种函数都会将值转为String类型后再进行操作。
  2. - +string 可以将值为数的string值转换为number类型
  3. ```javascript
  4. +'1' // 1
  5. 1++'1' // 2
  6. +'非数字' //NaN

转Boolean类型:

调用Boolean()函数
数字 —> 布尔:除0,NaN之外都是ture;
字符串 —> 布尔:除空串,其余都是true(包括空格);
null,undefined —> 布尔:返回值为false;
对象 —> 布尔 :返回值为true