本人觉得存在一个就够了,其理念都是转换成字符串。期待大家不同的见解。
业精于勤,荒于嬉;行成于思,毁于随。
吐血ing...强烈推荐题主有事没事去查手册!传送门
toString()是转化成字符串应该没什么歧义,其他很多语言也都有这么一个函数,比如Java,C#
Reference to Object.prototype.valueOf
JavaScript calls the valueOf method to convert an object to a primitive value. You rarely need to invoke the valueOf method yourself; JavaScript automatically invokes it when encountering an object where a primitive value is expected.
我想纠正一下题主的想法: 1. toString()和valueOf()完全是做两件事的函数 2. valueOf()之所以很少用到,如上面所说的,因为js会在需要的时候会自动调用这个函数。 3. 如果你可能需要用到valueOf(),它的作用是返回一个对象的原始值,比如:
var str = new String('hello,world'); console.log(typeof str); //'object' console.log(typeof str.valueOf()); //'string'
valueOf 优先级高于 toString http://stackoverflow.com/questions/2485632/valueof-vs-tostring-in-javascript
valueOf
toString
建议去熟读犀牛大典
这个valueOf和java的那个不是一回事,java的那个的确相同,可是js里面不是这么用的。他的作用是把包装器对象拆成基元类型。
num = new Number(123); //Number {123} num.valueOf(); //123
吐血ing...强烈推荐题主有事没事去查手册!传送门
toString()是转化成字符串应该没什么歧义,其他很多语言也都有这么一个函数,比如Java,C#
Reference to Object.prototype.valueOf
我想纠正一下题主的想法:
1. toString()和valueOf()完全是做两件事的函数
2. valueOf()之所以很少用到,如上面所说的,因为js会在需要的时候会自动调用这个函数。
3. 如果你可能需要用到valueOf(),它的作用是返回一个对象的原始值,比如:
valueOf
优先级高于toString
http://stackoverflow.com/questions/2485632/valueof-vs-tostring-in-javascript建议去熟读犀牛大典
这个
valueOf
和java的那个不是一回事,java的那个的确相同,可是js里面不是这么用的。他的作用是把包装器对象拆成基元类型。