【问题标题】:Which of const and let is better to use when declaring array of objects in JavaScript?在 JavaScript 中声明对象数组时,哪个 const 和 let 更好用?
【发布时间】:2019-03-09 17:51:07
【问题描述】:

假设我有一组用户。

const users = [
    { id: 1, name: 'Cena John' },
    { id: 2, name: 'Marcus Ignacious' }
];

是的,users 变量不可重新赋值。但是如果我添加一些数据呢?

users.push({id: 3, name: 'Kanye South'});

我知道users 的值没有改变,只是里面的值。

我想知道的是,当涉及到数组时,是否有任何约定让 let 优于 const。

我的一位同事说我应该使用let,因为值已更新。

哪个更适合使用?

【问题讨论】:

  • 如果你不需要覆盖usersconst 是要走的路
  • 我更喜欢 let if 是可变的,比如推送到一个数组,而 const 用于不可变的值 const pi = 3,14;但我还没有找到这方面的惯例。
  • 两者都不是“首选”。只需使用与您的同事一起制定的通用约定,您是否使用 const 来表示值是不可变的(而不仅仅是变量)。

标签: javascript arrays variables


【解决方案1】:

我的一位同事说我应该使用 let 因为值是 更新了。

哪个更适合使用?任何帮助将不胜感激。

一个好的做法是首先对每个变量声明使用const。每当您想将该变量重新分配为另一个值时,就该更改为let

在你的情况下,使用const 完全没问题。

【讨论】:

    【解决方案2】:

    如果

    你应该使用let
    let a = 5
    a = 10
    

    let a = [12,3]
    a = ['s',23]
    

    但是如果

    你最好使用const
    const a = [12,3]
    a.push('s')
    

    在这种情况下,a 不会改变 - 它是指向数组的链接,并且仍然是指向初始数组的链接

    【讨论】:

      猜你喜欢
      • 2012-07-27
      • 2018-03-15
      • 2023-04-08
      • 1970-01-01
      • 2017-12-28
      • 1970-01-01
      • 1970-01-01
      • 2010-10-30
      • 1970-01-01
      相关资源
      最近更新 更多