在 JavaScript 中声明对象数组时,const 和 let 哪个更好?

wob*_*ano 5 javascript arrays variables

假设我有一群用户。

const users = [
    { id: 1, name: 'Cena John' },
    { id: 2, name: 'Marcus Ignacious' }
];
Run Code Online (Sandbox Code Playgroud)

是的,该users变量不可重新分配。但是如果我向其中添加一些数据呢?

users.push({id: 3, name: 'Kanye South'});
Run Code Online (Sandbox Code Playgroud)

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

我想知道是否有任何约定在涉及数组时更喜欢 let 而不是 const 。

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

最好使用哪一种?

qiA*_*lex 5

你应该使用let如果

let a = 5
a = 10
Run Code Online (Sandbox Code Playgroud)

或者

let a = [12,3]
a = ['s',23]
Run Code Online (Sandbox Code Playgroud)

但你应该更好地使用constif

const a = [12,3]
a.push('s')
Run Code Online (Sandbox Code Playgroud)

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