A:基本的なタイプ
弦
結果はNaNである数に文字列があれば、非文字列が(最初の点を除く)任意の有効な数値文字を含むように、空の文字列がゼロ桁なります
console.log(ナンバー( "12.5")); // 12.5 にconsole.log(ナンバー( "12.5px")); // NAN にconsole.log(ナンバー( "12.5.5px")); // NANの はconsole.log(ナンバー( "")); // 0
ブーリアン
console.log(ナンバー(真の)); // 1。 はconsole.log(ナンバー(falseに)); // 0 はconsole.log(ますisNaN(falseに)); // falseには有効な数値であります
未定義の和はnull
console.log(数(ヌル)); // 0 にconsole.log(ナンバー)(未定義)。/ N AN
二:引用数据类型
把引用数据类型转换为数字是先把它基于toString()转换为字符串,再转换为数字
console.log(Number({num:"10"}));/aN console.log(Number({}));/aN ({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]));/aN [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