美文网首页
JS中的类型转换

JS中的类型转换

作者: 雪映月圆 | 来源:发表于2019-03-09 23:09 被阅读0次

一、Number( temp ) -> 把temp转化为数字

1. temp为数字时: 把temp原样输出
2. temp为字符串: "123.11" -> 123.11(number), "123AA" -> NaN(number)
3. temp为布尔值: true -> 1, false -> 0
4. temp为null: 转化结果为0(number)
5. temp为undefined: 转化结果为NaN(number)

二、String( temp ) -> 把temp转化为字符串

与Object.prototype.toString的区别:
这种强制类型转换方法可以将 null 和 undefined 这样不具备toString()属性的值转化为字符串而不引发错误

三、Boolean( temp ) -> 把temp转化为boolean值

1. temp为 数字0 || 空字符串 || false || null || undefined || NaN时,转化的结果为: false
3. temp取值除了以上六种情况,其余均转化为true。

四、parseInt( temp ) -> 把temp转化为整数

转换规则: 从第一个字符开始检验是否是数字,如果不是数字,则直接返回NaN。如果是数字,把这个数字保留,继续检验下一个字符,直到检验到不是数字的字符,最终把保留的数字返回。

PS: 以下两种情况均是针对temp为字符串时的情况
1. 正常模式转换( parseInt( temp) )

   <1>. 如果字符串的开头是0,则在转换过程中,会自动忽略
   <2>. 如果字符串的开头是0x,则在转换过程中,会正确解析0x为十六进制的开头
   例如: parseInt( "0123.12" ) -> 123, parseInt( "0x123.12" ) -> 291

2. 基模式转换( parseInt(n, [2, 8, 10, 16]) )

   <1>. 在转换时,会按照进制的有效字符去逐位判断,最终把转换的结果再转化为十进制返回。
   <2>. 当字符串以 0 开头时
parseInt( "0123.12", 2 ) -> 01 (二进制) -> 1 (十进制)
parseInt( "0123.12", 8 ) -> 0123 (八进制) -> 83 (十进制)
parseInt( "0123.12", 10) -> 0123 (十进制) -> 123(十进制)
parseInt( "0123.12", 16 ) -> 0123 (十六进制) -> 291(十进制)
   <3>. 当字符串以 0x 开头时
parseInt( "0x123.12", 2) -> 0 (二进制) -> 0 (十进制)
parseInt( "0x123.12", 8) -> 0 (二进制) -> 0 (十进制)
parseInt( "0x123.12", 10) -> 0 (十进制) -> 0 (十进制)
parseInt( "0x123.12", 16) -> 123 (十六进制) -> 291 (十进制)

五、parseFloat( temp ) -> 把temp转化为数字

1. 与parseInt()方法的处理方式相似,从位置0开始查看每个字符,直到找到第一个非有效的字符为止,然后把该字符之前的字符串转换成数字。
2. 与parseInt的区别

   <1>. parseFloat没有基模式
   <2>. 对于0开头的字符串,可理解为忽略0
   <3>. 对于0x开头的字符串,可理解为x是无效字符

相关文章

  • js中的类型转换

    在js中数据转换分为3种:隐式类型转换,强制类型转换,函数转换 1.隐式类型转换 (1):运算符转换 js中的值在...

  • JavaScript类型转换

    在js中数据类型转换一般分为两种,即强制类型转换和隐式类型转换(利用js弱变量类型转换)。 强制类型转换 即通过使...

  • js中的布尔类型转换

    js中的布尔类型转换 在js中经常会遇到其他类型的值转换为布尔类型的情况,总的来说js中的值可以分为以下两类 :(...

  • 2、强制数据类型转换

    数据类型转换: 在js中,数据类型的转换有两种,分别是自动转换和强制转换 自动转换: 自动转换是用JS进行某些操作...

  • JavaScript 01 (JS引入/变量/数据类型/类型转换

    JS的引入及调试,常量,字面量,变量,JS中的数据类型,JS的运算符,JS的运算符之隐式类型转换,强制类型转换,M...

  • javaScript中数据类型转换方法

    JS 数据类型转换 方法主要有三种 转换函数、强制类型转换、利用js变量弱类型转换。 1. 转换函数: js提供了...

  • 数据类型转换

    JS 数据类型转换 方法主要有三种 转换函数、强制类型转换、利用js变量弱类型转换。 1. 转换函数: js提供了...

  • js中的~~运算符号

    js中的~~是一种利用符号进行的类型转换,转换成数字类型如:

  • js中类型转换

    类型转换 首先,类型转换的三种情况: 转换成数字 转换成字符串 转换成布尔类型三种转换的所有情况如下表:15592...

  • 前端开发入门到实战:JavaScript字符串转换数字

    js 字符串转换数字方法主要有三种: 转换函数、强制类型转换、利用js变量弱类型转换。 1. 转换函数: js提供...

网友评论

      本文标题:JS中的类型转换

      本文链接:https://www.haomeiwen.com/subject/wfnepqtx.html