LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

Js中的隐式类型转换

zhenglin
2025年11月4日 10:14 本文热度 267

其他类型的值转为string规则如下

  1. ​null转为"null"

  2. undefined 转为 "undefined"

  3. ​true 和 false 转为 "true"和"false"

  4. ​数字类型10 转为 "10"

  5. ​数组:转为字符串将所有元素用逗号连接起来[1,2,3]转为1,2,3,空数组转为空字符串

  6. 普通对象转为"[object object]"


基本类型转为string都是直接再原来的基础上加上一个引号



'[object object]'=={} // true

'1,2,3' == [1,2,3]

String(null) // 'null'

String(undefined) // 'undefined'

String(true) // 'true'

String(10) // '10'

String(1e21) // '1e+21'

String([1,2,3]) // '1,2,3'

String([]) // ''

String([null]) // ''

String([1, undefined, 3]) // '1,,3'

String({}) // '[object Objecr]'


其他类型的值转为number的规则

  1. null 转为 0

  2. ​undefined 转为 NaN

  3. ​字符串如果是纯数字就转为对应的数字,否则就会转换失败,只能转为NaN

  4. ​true转为1,false转为0 这个和Java语言中的转换规则是一致的

  5. ​数组:首先会转为原始类型,也就是ToPrimitive,然后根据转换之后的原始类型按照上面的规则处理

  6. 对象:处理方式和数组相同


Number(null) // 0

Number(undefined) // NaN

Number('10') // 10

Number('10a') // NaN

Number('') // 0 

Number(true) // 1

Number(false) // 0

Number([]) // 0

Number(['1']) // 1

Number({}) // NaN


其他类型的值转为boolean

  1. false、null、undefined、空字符串、0和NaN转为false

  2. 其他所有的都转为true


console.log(null==false) // false

console.log(undefined==false) // false

console.log(""==false) //true

console.log(0==false) // true


隐式类型转换的一些规则

  1. 只要boolean类型参与比较那么布尔类型都会先转为number

  2. 数字类型和字符串比较,字符串会被转为数字类型

0 == '' // true 空字符串先转为数字,空字符串转为数字0

1 == '1' // true 字符串'1'直接转为数字1

1e21 == '1e21' // true 同上

Infinity == 'Infinity' // true 同上

true == '1' // true true是boolean类型参与运算自己先转为数字为1,然后就是数字和字符串的比较,'1'转为数字也会得到1

false == '0' // true 同上

false == '' // true false先转为数字为0,然后变为字符串和数字的比较,空字符串转为数字就是0


NaN和任何值都不相等,包括它自己。这是一个js中的异类单独记一下吧
console.log(undefined == null)  //true
null 和 undefined 与自身都是相等的,但是和其他类型(除了undefined和null)都不相等
console.log(null == null)// true
console.log(undefined == undefined)//true
console.log(null==0)//false
console.log(undefined==0)//false



参考文章:原文链接


该文章在 2025/11/4 10:15:00 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2025 ClickSun All Rights Reserved