+ -
当前位置:首页 → 问答吧 → Number()方法转换对象疑问

Number()方法转换对象疑问

时间:2011-09-21

来源:互联网

var obj={
valueOf:function(){
    return "1s";
},
toString:function(){
    return 0;
}
};
console.log(Number(obj));//NaN
为什么返回的是NaN
我看书上写的是先调用对象的valueOf()方法,运用规则后,如果是NaN,则继续调用toString()方法,再运用规则

作者: match2011   发布时间: 2011-09-21

NaN 是 Not a Number ,不是一个数值类型
var obj = {} 是一个对象(或者是一个hash),不属于数值类型

console.log(Number(obj.toString())); //0 正确

作者: wanglong8906   发布时间: 2011-09-21

相关阅读 更多