javascript - 即使console.log在进行更改的行之前,对象也会更改
问题描述
当我运行下面的 JS 时,控制台输出对象 1,键“course”为“JS4”,而不是原来的 JS2,即使 console.log 写在发生更改的行之前。如果我console.log(courses)
之后再写一个,我希望这些更改只会记录在控制台中courses[1].course="JS4";
const courses = [
{ teacher: "X", course: "JS" },
{ teacher: "X2", course: "JS2" }
];
courses.push({ teacher: "X3", course: "JS3" });
console.log(courses);
courses[1].course = "JS4";
解决方案
代码没有问题。您可能正在 Google Chrome 控制台内部进行检查,该控制台始终显示任何变量的更新值。
因此,如果语句后有更改console.log
,您将看到更新后的值。
推荐阅读
- python - VSCode Python 3+ Microsoft 扩展不会警告传入不同类型的参数
- python-3.x - “tensorflow.python.framework.errors_impl.FailedPreconditionError”同时运行“model_main_tf2.py”以在 tensorflow 中训练对象检测模型
- c - 代码运行没有错误或警告,但它崩溃
- unity3d - Unity Build 以混合现实为目标,但未出现在应用程序中
- c - C 编程 - 进程以状态 -1073741510 终止
- php - 如何使用 Eloquent 在 Laravel 中从多个选择中保存数组数据
- java - 为什么 sendKeys 不能随时发送每个字符?
- reactjs - React-redux 在线示例不应该工作
- python - Python venv 与 python3.6 显式工作,但不适用于 python3.8
- xcode - 使用 org.openbakery.xcode-plugin 中的“xcode-plugin”的示例项目