购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.8 显式类型转换

在实际编程中经常会涉及类型转换,比如,用户输入的字符串,我们要将它转换为Number类型才能参与后续运算。数据类型转换分为显式类型转换和隐式类型转换。显式类型转换是利用对应类型的转换函数进行类型转换的,本节将介绍显式类型转换的相关知识,隐式类型转换的相关知识将在3.9节进行介绍。

3.8.1 将其他类型值转换为Number类型

JavaScript内置了一个Number()函数,可以用它将其他类型值转换为Number类型。注意,Number()函数的首字母N是大写的,因为它实际是一个内置的构造函数。有关构造函数的相关知识将在后续章节介绍,这里只需要学会使用方法即可。

表3-6详细地列出了其他四种基本类型值使用Number()函数转换为Number类型的情况。需要指出的是,表3-6中的内容非常值得总结规律后背诵、记忆,因为这不仅是面试易考点,也是实际工作中的常用知识。

表3-6 其他四种基本类型值使用Number()函数转换为Number类型的情况

从表3-6可见,当String类型值转换为Number类型时,规律为“纯数字字符串能转换为普通数字,非纯数字字符串将转换为NaN,空字符串或空白字符串转换为0”。所谓“纯数字字符串”是指它看上去就是一个标准的数字写法,只不过此时被加上了引号,变成字符串而已。比如,“123.4”就是一个纯数字字符串,而“123年”就不是纯数字字符串,因为多了一个“年”字。

当Boolean类型转换为Number类型时,规律为“true转换为1,false转换为0”。JavaScript做这个规定也是非常好理解的:真值true表示存在,数字1也有这个含义;假值false表示不存在,数字0也有这个含义。

对比之下,Undefined类型和Null类型转换为Number类型时的规则则十分简单,Undefined类型会被Number()函数转换为NaN,Null类型会被Number()函数转换为0。

3.8.2 将其他类型值转换为String类型

JavaScript内置了一个String()函数,它可以将其他类型值转为String类型。除了特殊情况,转化字符串只要有值,String()函数就会把这个值转换为字符串输出。

表3-7详细地列出了其他四种基本类型值使用String()函数转为String类型的情况。同样地,表3-7中的内容也非常值得总结规律后背诵、记忆。

表3-7 其他四种基本类型值使用String()函数转换为String类型的情况

从表3-7可见,任何基本类型值使用String()函数转换为String类型时,都将变为“长得相同”的字符串,只需要记住“科学计数法和非十进制数会转换为十进制数”即可。

3.8.3 将其他类型值转换为Boolean类型

JavaScript内置了一个Boolean()函数,它可以将其他类型值转换为Boolean类型。

表3-8详细地列出了其他四种基本类型值使用Boolean()函数转换为Boolean类型的情况。同样地,表3-8中的内容也非常值得总结规律后背诵、记忆。

表3-8 其他四种基本类型值使用Boolean()函数转换为Boolean类型的情况

表3-8中的内容清晰易懂,不再赘述,请读者自己练习。 Jt0l1Un+E4ZAOTgyAEpgatvEK08x73o9XE0lt3O6B8sHiehNfLhwZZBmbyi1UeBm

点击中间区域
呼出菜单
上一章
目录
下一章
×