Esvaziar arrays em JavaScript
Tags: javascript, beginners, webdev, programming
Published: 2023-05-09 13:36:17

Galera no dia-a-dia estamos acostumados a trabalhar muito com objetos e arrays, mas as vezes eles podem complicar nossa vida se não soubermos estruturar bem um objeto ou se não soubermos manipular um array, em ambos os casos temos diversos caminhos e fazer diversas coisas diferentes, mas nesse post resolvi trazer uma coisa mais de base do JavaScript que nada mais é do que esvaziar um array, ou seja, vamos preencher um array de várias formas e vamos ver como deixar ele vazio.

Mas o que é um array ?
Na faculdade é bem comum, os professores falaram que precisamos criar uma lista e iterar sobre ela, e se você é novo em tecnologia e começou aprender HTML e CSS agora, não estou falando das tags: 
```
<ul>, <li> e <ol>
```
e sim criar um array 😃.

Arrays são objetos ( sim arrays são objetos, confuso não ? 😕 ) que na verdade são listas e eles tem vários métodos que nos ajudam a manipularmos de várias formas diferentes, não vou falar sobre todos eles, pois são muitos, mas escrevi três artigos explicando os principais, vou deixar os links aqui ( parte 1, parte 2, parte 3 ). Um array não tem tamanho nem tipo fixo, então o array é dinâmico e podemos colocar, strings, number, objetos etc…

Agora vamos brincar um pouco com nossos arrays, primeiro vamos de fato conferir se arrays são ou não objetos:

```
var arr = [1, 2, 3]
console.log(typeof arr) // object
```
Vamos ver checar o tamanho de um array:

```
var arr = [1, 2, 3]
console.log(arr.length) // 3
```

Obs: um array é iniciado na posição zero, então as posições do array acima serão:

```
elementos [1, 2, 3]
posições [0, 1, 2]
```

Agora o motivo desse artigo, vamos aprender algumas formas de zerar um array, podemos simplesmente redeclarar um array:

```
var arr = [1, 2, 3]
arr = []
console.log(arr) // []
console.log(arr.length) // 0
ou
var arr = [1, 2, 3]
arr = 0
console.log(arr) // 0
console.log(arr.length) // undefined
```

No segundo caso temos undefined pois transformamos nosso array em um number e esse tipo de dado em JavaScript não possui a propriedade length, podemos falar sobre tipos de dados em outro post 😃.

Podemos mudar o length dele na força bruta 👊:

```
var arr = [1, 2, 3]
arr.length = 0
```

Também podemos usar da maneira mais moderna:

```
let arr = [1, 2, 3] // usando let
arr = []
console.log(arr) // []
console.log(arr.length) // 0
ou
let arr = [1, 2, 3]
arr = 0
console.log(arr) // 0
console.log(typeof arr) // number
console.log(arr.length) // undefined
```

Também podemos tentar dessa forma:

```
const arr = [1, 2, 3] // usando const
arr = []
console.log(arr)
```

Isso gera um erro, pois não podemos reatribuir uma const e também podemos usar o método splice() para fazer esse serviço para nós:

```
let arr = [1, 2, 3]
arr.splice(0, arr.length)
console.log(arr) // []
```

Bom espero que tenham gostado, lembrando que qualquer feedback é muito bem vindo, espero vocês no próximo artigo, abraços quentinhos para vocês…

Fontes:

1. MDN: https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Array

2. Delfstack: https://www.delftstack.com/howto/javascript/how-to-empty-an-array-in-javascript/

3. JS tutorials: https://www.javascripttutorial.net/array/4-ways-empty-javascript-array/