老师输出的结果不对

老师输出的结果不对

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
	<title>变量、作用域</title>
</head>
<body>
<script type="text/javascript">
    var a = {name: 'xm'}, b = [4];
	/*此处添加代码*/
	b.push(a);
	a=b[0];
	b=b[1];
	document.write(a)
	document.write(b)
</script>
</body>
</html>


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

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

1回答
好帮手慕久久 2022-03-31 09:40:36

同学你好,解答如下:

1、使用document.write打印对象时,对象会被转成“[object Object]”,所以视觉效果不对:

https://img1.sycdn.imooc.com//climg/624505a60958632202660064.jpg

建议使用console将结果打印到控制台:

https://img1.sycdn.imooc.com//climg/624505e2092dcb8303300112.jpg

2、交换后,a应该是数组[4]),同学得到的a是数字4,结果不对:

https://img1.sycdn.imooc.com//climg/6245061e092bc50004650107.jpg

可参考如下方案调整:

https://img1.sycdn.imooc.com//climg/624506810910944f09150516.jpg

祝学习愉快!

  • https://img1.sycdn.imooc.com//climg/62c2f2f70968a8a709860443.jpg这样写打印a也是number

    2022-07-04 22:03:11
  • 同学你好,document.write这个方法在打印的时候,会把“待打印内容”转成字符串再输出。[4]转成字符串是“4”,所以页面上输出4:

    https://img1.sycdn.imooc.com//climg/62c39ad309ca631f04770114.jpg

    document.write在打印的时候,有时候会破坏数据的原始形态,所以不推荐使用该方法打印。建议换成console.log()输出结果。

    2022-07-05 09:59:48
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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