为了账号安全,请及时绑定邮箱和手机立即绑定

js中关于obj加法问题

js中关于obj加法问题

交互式爱情 2018-08-26 10:01:10
今天在看《高程3》的加法部分(P48)时候看到提到如果一个操作数是对象...............则会调用toString方法获得相应的字符串值.我就试了一下 以下代码var bbb = {  i: 10,  toString: function() {    console.log('toString');    return this.i;   },  valueOf: function() {    console.log('valueOf');    return this.i;   } } bbb + 1// valueOf 11bbb + '1' // valueOf 101为什么不是我预想的 toString,而是执行了 valueOf。 是我理解错了吗?
查看完整描述

2 回答

?
三国纷争

TA贡献1804条经验 获得超7个赞

那是因为你valueOf直接是基本类型,所以不需要toString
你改成这样就发现会先valueOf,然后还会toString

  valueOf: function() {    console.log('valueOf');    return this;
  }


查看完整回答
反对 回复 2018-08-27
  • 2 回答
  • 0 关注
  • 702 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信