JS一共有七种数据类型,分别是:string、number、boolean、object、symbol、null、undefined,在正常使用中,一般不会将数据转换为symbol、null、undefined,因此本文也不涉及。
一、转换为string
-
String()方法
String全局对象是一个用于字符串或一个字符序列的构造函数,可以使用String函数将其他值生成或转换成字符串。

String()
String()方法适用于将各种类型的数据转换为string类型,包括Symbol类型:

使用String()方法转换symbol类型
值得注意的是String()方法在转换Object类型时,无论Object中的键值为何,只会转换成字符串 "[object Object]"
-
toString()方法
每个对象都有一个toString()方法,返回值表示该对象的字符串。

toString()方法
与String()方法不同的是,toString()方法并不能转换 null类型和 undefined类型

toString()方法不能转换null和undefined
-
+''方法
对非String类型的数据,可以使用+''这种方法,例如:
+''方法
需要注意的是,+''方法的单引号中为空,并不是空格,而且这种方法并不能转换Symbol类型
+‘’方法并不能转换Symbol类型
二、转换为Number
-
Number()方法
Number方法
使用Number()方法时,会将Object类型转换为NaN,不管Object是空还是有值。 -
parseInt()方法
parseInt() 函数解析一个字符串参数,并返回一个指定基数的整数。
语法:parseInt(string, radix);,其中string表示要被转换的值,如果被转换的值不是一个字符串,那么该值将会被转换为字符串然后再进行数字转换;radix表示转换的基数,参数'10'表示被转换的值将被转换为十进制数。
parseInt() -
parseFloat()方法
parseFloat() 函数解析一个字符串参数并返回一个浮点数。
语法:parseFloat(string),string表示需要被解析成为浮点数的字符串。
由于只有十进制中存在浮点数,因此不需要参数。
parseFloat()
注意:parseFloat()与parseInt()一样,数字之后的字符将会被舍弃,数字之前的字符将导致转换后的值为NaN。 -
-0方法
-0
-0方法在转换数字字符串时可以将其转换为数字,若字符串中有非数字字符,则得到的值为NaN。
转换数字字符串及包含非数字字符的字符串 -
+方法
+
同-0方法,+方法在转换数字字符串时可以将其转换为数字,若字符串中有非数字字符,则得到的值为NaN。
三、转换为Boolean值
-
Boolean()方法
Boolean()方法