数据类型转换(常用)

218 阅读2分钟

一般分为强制转换和隐式转换两种,隐式转换使用的方法一般为Number()、String()、Boolean()。

一、数值类型转换

1、数值类型转字符串类型

(1)类型强制转换

var a = 10;
var b = Sting(a)

(2)利用隐式转换方式,根据运算特征来转换,隐式转换字符串回自动执行String()

var a = 10;
a = a + '';

(3)利用 to String() 方法,to String()实际上是object对象方法。

他的参数必须在2~36之间,制定进制转换。

var a = 10;
var b = a.toString();
// a.toString(10);

(4)使用 to Fixed() 方法,该方法转换为字符串,并保留小数点四舍五入。

var a = 10.5654;
var b = a.toFixed();

(5)

a.toExponential();

(6)

a.toPrecision();
2、数值类型转布尔类型
var a = 1;
a = Boolean(a)

除了0以为都为true,0为false。

3、数值类型转换为对象类型
var a = 1;
a = object(a);

此时a为数值对象,存储在堆中。

二、字符串类型转换

1、字符串类型转化为数值

(1) 强制转换为数值类型 Number()

NaN 数值类型种为非数值

var a = 'a';
a = Number(a);

(2) 转换为整数或浮点数的应用

var a = '10.32a'
var b = parseInt();
var c = parseFloat();
var d = parseInt(a,2)

parseInt() 将字符串转换为整数或只保留整数部分。

parseFloat() 将字符串转换为浮点数。

parseInt(a,2) 意思为将值转化为二进制的值。

2、字符串转换为布尔值
var str = '';
str = Boolean(str);

仅空字符串转换为布尔值的时候它的值为false,除此之位其余的都是true.

3、字符串转换为对象
var str = 'str';
str = object(str);

它会转换为一个字符串对象.

三、布尔类型的转换

1、布尔类型转换为数值类型
var bool = true;
var a = Number(bool)

当为true时转换为1,为false时转换为0.

2、布尔类型转换为字符串类型

转换后就是字符串 true/false

var bool = true;
var a = String(bool)
3、布尔类型转换为对象类型

转换后就是布尔对象型

var bool = true;
var a = object(bool);
4、任何类型转换为布尔值

只有 NaN、''、0、false、null、undefined这6种转换布尔类型为false,其余都为true。

四、undefined、null的转换

1、转换为字符串

当undefin和null转换为字符串就是其本身字母。

2、转换为数值类型

当用 Number()将其转换为数值类型时,undefined为NaN,但null的转换值为 0。

当用parseInt及其他一些方法时两者的转换后的值都为NaN.