请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师,关于MyQueue实例打印,但再后面执行delete以后,影响打印结果的问题

1.如果注释掉后面的delete测试,q能被正常打印
图片描述
图片描述

  1. 但如果放开delete的注释,delete之前的q的打印结果也会变成执行过delete的结果
    图片描述
    图片描述
    3.下面是代码,老师您看
    图片描述
    图片描述

是代码有什么问题吗?是不是涉及了执行流程异步的问题~

4.经老师提示,改为字符串化后的打印结果:
图片描述
图片描述

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

1回答

双越 2024-03-04 08:07:59

你把打印的代码改为  console.log( JSON.stringify(q) ) 试一下

0 回复 有任何疑惑可以回复我~
  • 提问者 aibo #1
    确实转换为字符串后可以正常打印了,这是为什么呢~
    回复 有任何疑惑可以回复我~ 2024-03-04 15:10:55
  • 双越 回复 提问者 aibo #2
    引用类型,打印的结果,可能会受到它后面变化的影响。这一直是初学者的一个坑。
    回复 有任何疑惑可以回复我~ 2024-03-05 08:12:18
  • 提问者 aibo 回复 双越 #3
    是底层实现的原因吗;虽然是引用对象,但在delete前这个对象的改变按理应该还没发生啊
    回复 有任何疑惑可以回复我~ 2024-03-05 15:06:08
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信