第三个中的xm在哪里?为什么不返回object了?

第三个中的xm在哪里?为什么不返回object了?

第二个和第三个有什么区别?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕码 2019-05-15 15:29:40

同学你好!

区别是第三个中调用了toString()方法

(1)第二个:{}代表的是对象,而document.write()方法输出的结果是字符串的形式,输出对象的话就会被转化为字符串。所以就是 [object Object]

toString() 方法可把一个逻辑值转换为字符串,并返回结果

(2)第三个中:如果输出的对象中有toString()方法,就会调用对象中的这个方法,而不是把整体转化为字符串,所以第三个输出的是‘调用了toString方法’。

意思就是转化为字符串的方法和对象中的方法正好一致,所以就调用了对象中的方法。

同学可以自己测试一下~

如果帮助到了你 欢迎采纳 祝学习愉快~

  • 提问者 慕仰6282199 #1
    toString:function不是对象中的一个属性名字吗?为什么变成了方法
    2019-05-15 15:45:11
  • 好帮手慕码 回复 提问者 慕仰6282199 #2
    同学你好! 不是的哦,是toString()方法里有一个函数,在函数中return了一句话 是这么理解的哦 如果帮助到了你 欢迎采纳 祝学习愉快~
    2019-05-15 16:14:02
  • 取自MDN 每个对象都有一个toString()方法,当该对象被表示为一个文本值时,或者一个对象以预期的字符串方式引用时自动调用。默认情况下,toString()方法被每个Object对象继承。如果此方法在自定义对象中未被覆盖,toString() 返回 "[object type]",其中type是对象的类型。 这样说就很清楚了
    2019-06-13 21:01:12
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
2.组件化网页开发
  • 参与学习           人
  • 提交作业       1121    份
  • 解答问题       14456    个

本阶段在运用JS实现动态网页开发的基础上,带你深入理解企业开发核心思想,完成一个企业级网页的开发,体验前端工程师的成就感。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师