如下一个对象:
var obj = {
x = 10,
valueOf : function(){
return this.x + 30;
},
toString : function(){
return this.valueOf() + 10;
}
}
alert(obj); //返回50
alert(+obj); //返回40
请问
1、为何obj的值是50?+obj的值为何是40?obj里面的方法还没有被调用,返回值怎么就改变了呢?
2、+obj是什么意思?
谢谢!
JavaScript对象valueOf与toString方法
开始是是10,然后alert时调用tostring,里面调用+30的那个方法,最后又加了10