javascript - 控制台中奇怪的 JS 行为
问题描述
在我的 JS 脚本中(在一个简单的 html 页面内),我有一个使用console.log(subs)
. 在开发控制台中,我看到的subs
是:
> Object { topic: "hgm_giuse/#", qos: 2 }
但是,如果单击左侧的箭头以展开对象,我会看到:
{…}
qos: 128
topic: "hgm_giuse/#"
<prototype>: Object { … }
“128”从何而来?
解决方案
该对象刚刚在第一个 console.log 之后被修改!
您可以在开发工具控制台中重现它:
a = {b: 12}
console.log(a) -> {b: 12}
a.b = 24;
console.log(a) -> {b: 24}
当您现在展开第一个注销的对象时,它也会显示 24,因为它只是对 a 的引用 :-)
推荐阅读
- ios - Swift 委托和协议方法不在 iOS 中调用
- shell - 执行shell时的Jenkins管道“java.io.NotSerializableException:hudson.model.User”
- c# - 如何用c#替换excel文件中的代码模块
- visual-studio-code - vscode 的 Astyle 格式:扩展没有配置文件
- excel - 在 Excel 中组合附加到同一变量的多个值
- javascript - 事件委托 - 检索 DOM 元素是其属性的类的实例
- kubernetes - Kubernetes - 使用特定的 ConfigMap 版本控制
- c# - Asp .net core 更改密码需要重新启动应用程序
- android-asynctask - 在 asynctask 类中使用 edittext 值
- python - TKinter - 尝试销毁按钮时出现 AttributeError