【javascript基础】toString valueOf toLocaleString的具体区别
2012-11-19 14:40 sniper007 阅读(534) 评论(0) 收藏 举报一、定义:
《javascript高级程序设计》第二版是这么写的:
toString:返回对象的字符串表示,
valueOf : 返回对象的字符串、数值或布尔值的表示,通常与toString方法的返回值相同
PS:《javascript权威指南》写得更含糊,两本书根本没涉及toLocaleString是什么含义。
ecmascript262 第五版 http://es5.github.com/ 是如下定义的:
翻译:
当toString被调用的时候,将进行如下步骤:
1.如果当前值没有定义的话,返回字符串"[object Undefined]"
2.如果当前值是null的话,返回“[object Null]”
3. 将当前this作为参数调用ToObject方法,将0作为这个返回值(PS:麻痹,这翻译好别扭啊)
ToObject的方法描述如下:
4.把class值为0的内部属性[[class]]的值,
5.返回结果:"[object" + class +"]" .
翻译:
1.将当前this作为参数调用ToObject方法,将0作为这个返回值(PS:麻痹,这翻译好别扭啊)
2.调用toString方法
3.如果toString是不可调用的,则抛出类型错误异常
4.返回toString的结果
参考:
浙公网安备 33010602011771号