JS里的数据类型转换

上一篇文章(JS里的数据类型)介绍了js中的数据类型。这篇主要介绍数据类型转换。

一、任意类型转字符串

转换成string类型有三种方法:

1⃣️String(x)    (推荐)

这是window下的全局方法,number、boolean、undefined、null都可以使用这个方法转字符串

object类型用这个方法,得到的是[object Object]而不是obj的内容

JS里的数据类型转换_第1张图片
String()

2⃣️x.toString()    (不推荐)

平时这个更常用,但这个用起来不是很方便的

null和undefined类型用toString方法会报错

object类型用这个方法,需要加(),得到的是[object Object]而不是obj的内容

JS里的数据类型转换_第2张图片
toString()

3⃣️x+''     (推荐)

与空字符串相加,这个可以使用的范围更广

number、boolean、undefined、null都可以

object类型用这个方法,得到的是[object Object]而不是obj的内容

JS里的数据类型转换_第3张图片
+''

二、任意类型转数字

1⃣️Number(x)


2⃣️parseInt(x, 10) MDN

这个是比较常用的将字符串转换为整数的方法,第一个参数是要转换的值,第二个是进制,10进制,8进制等。

遇到转换不成数字的会返回NaN

JS里的数据类型转换_第4张图片
parseInt

3⃣️parseFloat(x) MDN

转换成浮点数

4⃣️x - 0(推荐)

减0的方法,既可以转换int,也可以转换float类型。

JS里的数据类型转换_第5张图片
减0

5⃣️+x

三、任意类型转布尔

有两个方法:1、Boolean(x)2、!!x

1⃣️Boolean(x)

是window下的全局方法

JS里的数据类型转换_第6张图片
boolean

2⃣️!!x


JS里的数据类型转换_第7张图片

3⃣️falsy值 (falsy mdn)

有那些值可以转换成false呢

falsy(虚值)是在 Boolean 上下文中已认定可转换为‘假‘的值.

JavaScript 在需要用到布尔类型值的上下文中使用强制类型转换(Type Conversion )将值转换为布尔值,比如:在条件语句或者循环语句中

falsy值有:

boolean中的false

number中的0和NaN

null

undefined

字符串中的空字符串''或""

document.all

JS里的数据类型转换_第8张图片
falsy

你可能感兴趣的