数据类型转换

1. 概述

JavaScript 是一种动态类型语言,变量没有类型限制,可以随时赋予任意值。

虽然变量的数据类型是不确定的,但是各种运算符对数据类型是有要求的。如果运算符发现,运算子的类型与预期不符,就会自动转换类型。比如,减法运算符预期左右两侧的运算子应该是数值,如果不是,就会自动将它们转为数值。

2. 强制转换

强制转换主要指使用Number()、String()和Boolean()三个函数,手动将各种类型的值,分别转换成数字、字符串或者布尔值。

2.1 Number()

使用Number函数,可以将任意类型的值转化成数值。

下面分成两种情况讨论,一种是参数是原始类型的值,另一种是参数是对象。
(1)原始类型的值,转换规则如下

// 数值:转换后还是原来的值
Number(324) // 324

// 字符串:如果可以被解析为数值,则转换为相应的数值
Number('324') // 324

// 字符串:如果不可以被解析为数值,返回 NaN
Number('324abc') // NaN

// 空字符串转为0
Number('') // 0

// 布尔值:true 转成 1,false 转成 0
Number(true) // 1
Number(false) // 0

// undefined:转成 NaN
Number(undefined) // NaN

// null:转成0
Number(null) // 0

2、强制转换

2、强制转换

2、强制转换

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 强制转换 强制转换主要指使用Number、String和Boolean三个构造函数,手动将各种类型的值,转换成数字...
    灯火阑珊Zone阅读 3,304评论 0 3
  • JavaScript 是一种动态类型语言,变量没有类型限制,可以随时赋予任意值。 上面代码中,变量x到底是数值还是...
    许先生__阅读 1,592评论 0 1
  • JavaScript 是一种动态类型语言,变量没有类型限制,可以随时赋予任意值。 上面代码中,变量x到底是数值还是...
    徵羽kid阅读 1,813评论 0 0
  • 一、概述 JS是一种动态类型语言,变量没有类型限制,可以随时赋予任何值。 虽然变量没有确切的类型,但是数据本身和各...
    周花花啊阅读 2,472评论 0 1
  • 记不清第三遍还是四遍读《另一种选择》了,每当读到感同身受的段落便会掩卷而思:如何面对逆境是一门人生的必修课,人生难...
    写作英雄梦想成长记阅读 1,430评论 0 0