
Na maioria dos casos usamos matrizes Quando trabalhamos com JavaScript ou com qualquer outra língua, Desde que nós permitimos que um melhor manipulação e agrupamento de determinados conjuntos de dados de características semelhantes.
Entre todos os possíveis operações que eu possa fazer uma matriz, um dos mais comum é o de excluído o esvaziamento, que fará com que a matriz que irá converter em um matriz vazia.
Como esvaziar ou excluir uma matriz em Javascript e suas implicações
Para realizar o esvaziamento ou excluído de um matriz Nós podemos fazer uso de duas implementações o soluções, que veremos abaixo. Suponha que Temos uma matriz em uma variável MyArray com o seguinte conteúdo:
1 | var miArray = [1, 2, 3, 4, 5]; |
Podemos realizar a esvaziamento da matriz, usando o atribuição de um matriz vazia para a variável em questão:
1 | miArray = []; |
Então a variável MyArray Agora vai ser apontando para um matriz vazia. Ou seja, Não é o vazio de matriz anterior, Mas que a variável está apontando para um nova posição de memória. Para entender isso, Suponha que as seguintes variáveis:
1 2 3 | var miArray = [1, 2, 3, 4, 5]; var miOtroArray = miArray; |
Se agora, Realizamos a exclusão da primeira matriz Como já vimos anteriormente:
1 2 3 4 5 | miArray = []; //Los valores de las variables anteriores son: //miArray = []; //miOtroArray = [1, 2, 3, 4 ,5]; |
a variável miOtroArray Vai continuar apontando para o local de memória que hospeda o matriz tinha anteriormente atribuído a variável MyArray, Porque com esta solução, a única coisa que fazemos é atribuir para a variável uma nova matriz vazia em outro local de memória.
Para evitar isso, outro Escorra o método o excluído de um matriz em JavaScript é através da Propriedade. comprimento, Assim, Esvaziámos nossa primeira matriz da seguinte maneira:
1 2 3 4 5 | miArray.length = 0; //No reasignamos a un nuevo valor, sino que reducimos la longitud del actual. //Los valores de las variables anteriores son: //miArray = []; //miOtroArray = []; |
Desta forma, Estamos fazendo isso o comprimento de nossa matriz atual é zero, Então você está esvaziamento, e segue a variável apontando para a mesma matriz, Portanto, a outras variáveis possíveis ou ponteiros, Ele apontou para o mesmo, Eles terão o mesmo valor Isto. Assim nós Evitamos qualquer problema com variáveis e ponteiros Pode causar um remapeamento para uma nova matriz, como no primeiro caso.
Além disso, Esta última solução, é uma solução melhor no que diz respeito desempenho Desde que realmente Libera a memória atribuído à matriz. Se usamos o primeira solução, Além de alocar memória para a nova matriz vazia, Nós não liberar memória alocada a matriz anterior, no evento que qualquer outra variável ou ponteiro está apontando para ele.
