eu vi alguns exemplos online que ajudam a esclarecer essa parte:
CONST OBJECT
const obj = {a: 'foo', b: 'bar'};
const obj2 = {z: 'baz'};
obj = obj2; // const nao vai deixar essa condicao acontecer
ao tentar usar obj recebe obj2 ele nao parmite, pois isso tira {a:'foo', b:'bar'} e substitui pra {z: 'baz'}
ou seja no caso de um cadastro na qual voce usa um objeto pra manter nomes telefone etc e password
voce declara como const apenas para proteger esse objeto em caso alguem tente algo contra seu codigo e modifique esse objeto.
seria isso ?
// LET
let condiments = ['Ketchup', 'Soy Sauce', 'Sriracha'];
// Mutacao possivel
condiments[0] = 'Mayo';
console.log(condiments);//=> [ 'Mayo', 'Soy Sauce', 'Sriracha' ]
// redesenhando possible
condiments = ['Mayo'];
console.log(condiments); //=> [ 'Mayo' ] ele vai aceitar modificar o codigo do objeto
// Re-declarar nao e possivel
//let condiments = [] //=> SyntaxError: Identifier 'condiments' has already been declared
// CONST array
const utensils = ['Fork', 'Chopsticks', 'Spork'];
// Mutation Possible
utensils[2] = 'Spoon'
console.log(utensils); //=> [ 'Fork', 'Chopsticks', 'Spoon' ]
utensils.length = 0
console.log(utensils); //=> [ ]
// Re-assigning not possible
//utensils = ['Spoon']; //=> TypeError: Assignment to constant variable.
// Re-declaring not possible
//const utensils = {} //=> SyntaxError: Identifier 'condiments' has already been declared