领先的免费Web技术教程,涵盖HTML到ASP.NET

网站首页 > 知识剖析 正文

javascript类型转换中需要注意的坑

nixiaole 2024-12-03 17:14:05 知识剖析 17 ℃

数字型转换

  • Number(undefined) 转换为 NaN
> Number(undefined)
NaN
  • Number(null) 转换为 0
> Number(null)
0
  • Number(true) 转换为 1
> Number(true)
1
  • Number(false) 转换为 0
> Number(false)
0
  • Number(string) 先去掉字符串首尾空格。剩余字符串如果为空,则转换为 0 。如果剩余字符串为纯数字字符串,则转换为对应 数字 。如果剩余字符串还有其他字符,则转换为 NaN
> Number("   123   ")
123

> Number("   123潘高的小站   ")
NaN

布尔型转换

  • Boolean(0) 直观上为“空”的值(如 0、空字符串、null、undefined 和 NaN)将变为 false
> Boolean(0)
false

> Boolean("")
false

> Boolean(null)
false

> Boolean(undefined)
false

> Boolean(NaN)
false
  • Boolean("潘高的小站") 其他情况都是 true
> Boolean("潘高的小站")
true

> Boolean("0")
true

注意:Boolean("0") 转化为 true ,并不是 false 。因为 "0" 是字符串,不是数字,并且不是空字符串,只有 "" 这样的空字符串才是 false 。

最近发表
标签列表