javaScript把其它类型转换为Number类型

一:基本类型

字符串

把字符串转换为数字,只要字符串中包含任意一个非有效数字字符(第一个点除外)结果都是NaN,空字符串会变为数字零

console.log(Number(\"12.5\")); //12.5
console.log(Number(\"12.5px\")); //NAN
console.log(Number(\"12.5.5px\"));//NAN
console.log(Number(\"\"));//0

布尔

console.log(Number(true));//1
console.log(Number(false));//0
console.log(isNaN(false));//false 是有效数字

null和undefined

console.log(Number(null));//0
console.log(Number(undefined));//NaN

二:引用数据类型

把引用数据类型转换为数字是先把它基于toString()转换为字符串,再转换为数字

console.log(Number({num:\"10\"}));//NaN
console.log(Number({}));//NaN ({num:\"10\"}).toString();是\"[object Object]\" 是非有效数字字符所以是NaN
console.log(Number([]));//0 [].toString()是\"\"所以转为数字是0
console.log(Number([12]));//12 [12].toString()是\"12\"所以转为数字是12
console.log(Number([12,23]));//NaN [12].toString()是\"12,23\"里面的\",\"是非有效数字字符所以是NaN

相关面试题

let a=10+null+true+[]+undefined+\'腾讯\'+null+[]+10+false;
console.log(a)//11undefined腾讯null10false

null变为数字是0,true是1,[]变为数字,先要经历变为空字符串,遇到字符串,啥也别想了,直接变为字符串拼接.

当去掉undefined前面的[]结果就变成了NaN腾讯null10false

以上就是本次介绍的javaScript把其它类型转换为Number类型全部知识点内容,感谢大家的学习和对的支持。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容