Javascript 如何在没有console.log的情况下更新数组元素?

Javascript 如何在没有console.log的情况下更新数组元素?,javascript,Javascript,假设我们有 let nums = [ [1 , 2], [3 , 4] ] console.log(nums) document.addEventListener('keydown', (event) => { if (event.code == "Numpad7"){ nums[0][1] = 5; } }) 现在我想把4改成5 我重新分配nums[0][1]=5 但是这实际上并没有更新已经被consoled.log打印的数组。

假设我们有

let nums = [
[1 , 2],
[3 , 4]
] 
console.log(nums)
document.addEventListener('keydown', (event) => {
    if (event.code == "Numpad7"){
       nums[0][1] = 5;
    } 
  })
现在我想把4改成5 我重新分配nums[0][1]=5 但是这实际上并没有更新已经被consoled.log打印的数组。
有办法吗?

Console.log记录当前状态下变量的值。
如果要记录阵列的更新版本,则必须在更新后进行记录。

大多数Chrome版本都会自动更新对象,因此如果将结果包装到对象中,则可能会得到所需的结果

var x={attrib:hello} console.logx; x、 attrib=世界;
//检查浏览器控制台-而不是堆栈溢出预览。重新分配值的正确方法是:

nums[1][1] = 5

谢谢大家的帮助,所以我不得不将console.log放在函数中,即使它不是我想要的安静,我也会检查它:

您可以清除控制台日志,然后记录新的值

   let nums = [
    [1 , 2],
    [3 , 4]
    ] 
    console.log(nums)
    document.addEventListener('keydown', (event) => {
        if (event.code == "Numpad7"){
           nums[1][1] = 5;
           console.clear();
           console.log(nums);
        } 
      })

Chrome有这个选项Firefoxtoo@Areu那么代码中的任何东西都不行了?我们是在说node.js吗?因为在浏览器中,如果控制台输出处于活动状态,则此操作已按预期工作。您正在记录nums但正在更新Cells。我在修复此代码后尝试了此代码,如果在按键后展开数组视图,则会显示新值。然而,真正的问题是:这有什么意义?你的最终目标是什么?是的,我想到了,但是寄宿生需要一直在那里,因为我做的功能是,当我按数字1时,它将数字4更改为5,所以当变量更改时,当给定的输入不会真正改变时,再次打印work@Extraordinary这是你的答案。更新后必须再次记录阵列it@Rilla这不是设定的代码,当我按a键时应该会更新button@Extraordinary根据问题中的代码,将4改为5可以。您可以在事件列表中添加一个console.log来记录更新后的nums数组。因此,当您按数字键7时,它将console.log nums更改为4到5。谢谢,这与我需要的略有不同。这不是问题的答案,但如果您不必支持旧浏览器,请将其删除,我认为你想要实现的目标可以用一个简单的方法来实现。这里有一个简短的解释和一个实现示例