JavaScript数据类型转换
这篇文章内容主要是讲JavaScript的数据类型的转换
-
字面量、变量、标识符
注(标识符一般都采用大小驼峰的写法,小驼峰:helloWorld 大驼峰:HelloWorld)
-
JS中的6种数据类型:
基本数据类型:String(字符串类型)
Number(数值类型)
Boolean(布尔值类型(true/false))
Null(空值类型)
Undifined(未定义类型)
引用数据类型:Ob ject(对象类型)
注:typeof可以去检测一个变量的类型
【拓展】
Number.MAX_VALUE 表示数值的最大值
Number.MIN_VALUE 最小值
用法:
Var max= Number.MAX_VALUE;
console.log(max);正无穷大
console.log(-max*max);负无穷大
3、JavaScript数据类型的强制转换
主要是将其他的数据类型转换为:String、Number、Boolean
(1)、将其他的数据类型转换为String类型
方法一:
toString()方法可以把为他的数据类型转换为字符串类型
该方法不会影响原变量,他只会将转换的结果返回
注意:null和undefined这两个值没有toString()方法,如果调用该方法程序会报错
例:var a=123;【数值类型 字符串类型】
Var b=a.toString();
a=false; 【布尔类型 字符串类型】
b=a.toString();
console.log(typeof a);
console.log(typeof b);
方法二:
调用String()函数,并将被转换的数据作为参数传递给函数
使用String()函数做强制类型转换时,
对于Number Boolean实际上是调用toString()方法
但是对于null和undefined,就不会调用toString()方法
它会将null直接准换为“unll”(字符串)
它会将undefined直接准换为“undefined”(字符串)
(2)、将其他类型转换为Number
使用Number()函数
字符串 数字
- 如果是纯数字的字符串,则可以知己转换为数字
例:var num=”123”;
Console.log(typeof num);
Var a=Number(num);
Console.log(typeof a) //数值为123
- 如果字符串中有非数字的内容,则转换为NaN
例:num=”123jhsh”;
a=Number(num);
console.log(a); //NaN
- 如果字符串是一个空串或者是一个全是空格的字符串,则转换为0
例:num=” ”;
a=Number(num); //0
console.log(a);
布尔值 数字
True准换为1 false转换为0
例:var bl=false;
Bl=Number(bl);
Console.log(bl); //1
Null 数字0
例:var c=null;
C=Number(c);
Console.log(c); //0
Undefined 数字NaN
例:c=undefined;
C=Number(c);
Console.log(c); //NaN
第二种方式:这种方式专门用来对付字符串类型
parseInt()把一个字符串转换为一个整数【parseInt()可以将一个字符串中的有效整数内容取出来,然后转换为Number】
parseFloat()把一个字符串转换为一个浮点数【parseFloat()与()类似,但是不同的是他可以获取有效的小数】
(3)、将其他类型转换为Boolean使用Boolean()函数
数字 布尔 除了0和NaN是false,其余的全部都是true
字符串 布尔 除了空串是false,其余的全部都是true
Null和undefined都会转换为false
对象也会转换为true
例:
// console.log(typeof NaN);//number
var a=123.123;
a=Boolean(a);
console.log(a);
a=0;
a=Boolean(a);
console.log(a);
a=NaN;
a=Boolean(a);
console.log(a);
var str="234df";
str=Boolean(str);
console.log("字符串类型转换为布尔值"+str); //true
str="";
str=Boolean(str);
console.log("空字符串转换为布尔值"+str); //false
var e=undefined;
e=Boolean(e);
console.log(e);//false