【问题标题】:How to reset chrome console variables如何重置 chrome 控制台变量
【发布时间】:2020-07-02 11:56:10
【问题描述】:

说我有

const array = [1, 2, 3, 4];

我想重新开始

const array = [1, 2, 3, 4, 5];

那么如何避免(不关闭并重新打开控制台)

VM347:1 Uncaught SyntaxError: Identifier 'array' has already been 宣布 在:1:1

【问题讨论】:

  • 用let代替const,然后用array = [....]代替const array = [...]
  • This is now possible(2021 年 6 月)

标签: javascript google-chrome


【解决方案1】:

const 声明了一个只读的命名常量,在这种情况下您应该使用let 语句,如下所示:

let array = [1, 2, 3, 4]

// Reassign the value of 'array'
array = [1, 2, 3, 4, 5]

// Log the result
console.log(array)

结果:

1, 2, 3, 4, 5

【讨论】:

    【解决方案2】:

    你不能。这与 Node.js 终端相同。如果已声明,则需要通过刷新控制台来重置上下文。

    【讨论】:

      【解决方案3】:

      我认为你不能,控制台相当特别,但从根本上说,它是一个开放式执行上下文。除非它位于嵌套块中,否则您不能在同一执行上下文中重新声明 const。 (如果您在控制台中打开一个嵌套块,则在关闭该块之前您不会看到评估的内容,所以这无济于事。)

      改为使用let,第二次不使用let:

      let array = [1, 2, 3, 4];
      // ...
      array = [1, 2, 3, 4, 5];
      

      或者如果这是一个大问题,请使用var,因为您可以重复它。

      var array = [1, 2, 3, 4];
      // ...
      var array = [1, 2, 3, 4, 5];
      

      【讨论】:

        【解决方案4】:

        将 const 更改为 var。

        使用 const 表示初始化后不能更改值。

        var array = [1, 2, 3, 4];
        

        所以当你想改变值时:

        array = [1, 2, 3, 4, 5];
        

        所以现在应该可以了。

        【讨论】:

          猜你喜欢
          • 2019-10-29
          • 2016-03-20
          • 2013-03-17
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-01-27
          • 2011-10-26
          • 2011-06-06
          相关资源
          最近更新 更多