六种数据类型
基本数据类型:
- 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 未定义
引用数据类型:
- Object 对象类型
可使用typeof来获取值的数据类型
强制类型转换
转String类型:
调用被转换数据类型的toString方法
var a = 123; //a类型为number
var b = a.toString(); //b类型为string,a仍为number类型,不影响a的类型
null 和 undefined 无 toString 方法
调用String函数,将a转换为字符串
a = string(a); //a类型为string
转Number类型:
调用Number()函数,将a转换为Number类型
var a = "123";
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
parseInt()函数从左往右读取数字,直到遇见第一个非数字为止;<br />parseFloat()函数从左往右读取数字,遇见小数点继续往右读取数字,直至遇见非数字为止。<br />对于非string类型,这两种函数都会将值转为String类型后再进行操作。
- +string 可以将值为数的string值转换为number类型
```javascript
+'1' // 1
1++'1' // 2
+'非数字' //NaN
转Boolean类型:
调用Boolean()函数
数字 —> 布尔:除0,NaN之外都是ture;
字符串 —> 布尔:除空串,其余都是true(包括空格);
null,undefined —> 布尔:返回值为false;
对象 —> 布尔 :返回值为true