首页 > 编程语言 > 详细

object to primitive in javascript

时间:2015-01-22 19:40:22      阅读:223      评论:0      收藏:0      [点我收藏+]

 

 例1:

var a={};  alert(a); //[object Object];

例2:

var a={

  toString:function(){

    return 1;

  }  

}

alert(a);  // 1

a+1;      //2

例3:

var a={toString:function(){return 1;},valueOf:function(){reuturn 2};}

alert(a); // 1

a+1;     // 3

---------------------------------------------------------------------------------------------------------------------------------------------------

+操作会如下步骤:

  1. Let lref be the result of evaluating AdditiveExpression.

  2. Let lval be GetValue(lref).

  3. Let rref be the result of evaluating MultiplicativeExpression.

  4. Let rval be GetValue(rref).

  5. Let lprim be ToPrimitive(lval).

  6. Let rprim be ToPrimitive(rval).

  7. If Type(lprim) is String or Type(rprim) is String, then

    1. Return the String that is the result of concatenating ToString(lprim) followed by ToString(rprim)

  8. Return the result of applying the addition operation to ToNumber(lprim) andToNumber(rprim). See the Note below 11.6.3.

 

 

+ specification: http://es5.github.io/index.html#x11.6.1

 

object to primitive in javascript

原文:http://www.cnblogs.com/Mr-Joe/p/4242215.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!