当前位置: 代码迷 >> JavaScript >> 请教javascript中Number()与valueOf()有什么具体的分别
  详细解决方案

请教javascript中Number()与valueOf()有什么具体的分别

热度:261   发布时间:2013-01-07 10:02:24.0
请问javascript中Number()与valueOf()有什么具体的分别?
rt

请问javascript中Number()与valueOf()有什么具体的分别?
------解决方案--------------------
Number()是将某个变量变成数字类型,如var test = Number("aa");
此时test的值为NaN,isNaN(Number("aa")) == true; //true
valueOf()来自object,"aa".valueOf == "aa"; //true
------解决方案--------------------
valueOf得到的是原始的值,类型不变

toString不管什么类型,最后都是string

    var a = 123;
    alert(typeof a.valueOf())//Number
    alert(typeof a.toString())//string



所以字符串操作时一般调用toString,其他操作valueOf,也可以看看这篇文章:JavaScript对象valueOf与toString方法
  相关解决方案