7-4第1题
第三个document.write怎么就弹出一个return后面的值呢?这个toString没看见被调用呢?函数没被调用如何执行return呢?不懂
40
收起
正在回答 回答被采纳积分+1
3回答
怎么都被占用了呢
2017-12-11 19:11:04
1、方法被调用不是document.write调用的,而是对象调用的,这个方法只不过在它里面定义了而已,这个思想要转变过来。
2、不管document里面写了什么,都会把里面的内容转化成字符串,转成字符串的方法是内置定义好的toString(),但是,在第三个 document.write()中的内容是一个对象,这个对象重写了内置的toString()方法,这个时候的toString()方法是对象中我们定义的那个,所以当 document.write执行的时候,不管里面是什么,都会调用重写的toString()方法,而不是内置的toString()方法。
3、你看不到对象里的函数被调用,因为他是自动调用的,只要写了document.write()里面的内容就会执行我们重写的tostring方法,而这个方法就是告诉程序去输出return的那句话。
HTML5与CSS3实现动态网页 2018
- 参与学习 1887 人
- 提交作业 4643 份
- 解答问题 5760 个
有HTML和CSS基础,却不知道如何进阶?本路径带你通过系统学习,完成从“会做网页”到“做出好的动态网页”的蜕变,迈出成为前端工程师的第一步。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星