Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

114
Visualizações
¿Por qué los elementos de la matriz javascript const son mutables?

Parece bastante contrario a la intuición que las matrices declaradas como constantes tengan elementos mutables. ¿Cuál es el razonamiento detrás de esta decisión de diseño? Más aún, si uno necesitara una matriz verdaderamente inmutable en JS, ¿cómo se haría eso?

about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

¡Const no está destinado a hacer que su elemento sea inmutable! ¡solo garantiza que su elemento permanezca igual, por lo que no puede asignarle un elemento diferente!

about 4 years ago · Juan Pablo Isaza Relatório

0

Puede congelar la matriz con Object.freeze . Esto haría que los elementos no se puedan cambiar.

 const arr = [1, 2, 3]; arr.push(4); // arr = [1, 2, 3, 4] const frozenArr = Object.freeze(arr); frozenArr.push(5); // Error: Cannot add property frozenArr.pop(); // Error: Cannot delete property

Respuesta anterior como era, para referencia.

Una matriz const solo evita más asignaciones, pero puede cambiar su contenido.

La mejor práctica para arreglos inmutables es hacer copias, es decir, usar Array.slice() sin argumentos o Array.from() .

Ejemplo:

 const originalArray = [1, 2, 3]; let firstNewArray = Array.from(originalArray); firstNewArray.push(4); let secondNewArray = originalArray.slice(); secondNewArray.push(5); console.log(originalArray); // Output -> [1, 2, 3] console.log(firstNewArray); // Output -> [1, 2, 3, 4] console.log(secondNewArray); // Output -> [1, 2, 3, 5] originalArray.push(9); // This is allowed console.log(originalArray); // Output -> [1, 2, 3, 9] originalArray = []; // Error: Assignment to constant variable
about 4 years ago · Juan Pablo Isaza Relatório

0

Una matriz, un número, una cadena son todos objetos. Se diferencian en la forma en que almacenan valores. Una cadena son caracteres y, por lo tanto, se fijan si se ha declarado const. Una matriz es una construcción de cómo se almacenan múltiples valores. Esto significa que const establece el tipo immutable pero no los valores.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda