js中类型转换有三种:转为字符串、数字、bool
一. 转为字符串
- null、 undefined -> 'null' 、 'undefined'
- Boolean: true -> 'true'、false -> 'false'
- Number: 直接转换,极大极小的数字会以指数形式表示
- Symbol: 直接转换,只允许强制类型转换,隐式会报错
- 普通对象:toString()
二. 转为数字
- undefined -> 'NaN'
- null -> 0
- Boolean: true -> 1、false -> 0
- String: 等于调用 Number(str) , '' -> 0、 '含非数字' -> 'NaN' 、'数字' -> 数字
- Symbol 不能转为数字,报错
- 对象:valueOf()
三. 转为布尔❤️
除假值外,其余转为 true
假值:undefined 、null、false、+0 -0 NaN、''、document.all
网友评论