Javascript é uma linguagem fracamente tipada
let number = 8
const name = 'John'
var profession = 'Chef'
number = 'Hello' // é possível, mas não é recomendado
const minhaVariavel = {}
minhaVariavel = outraVariavel // erro
minhaVariavel = {novaPropriedade: 1} // erro
minhaVariavel.novaPropriedade = 1 // tudo certo! eu não mudei a referência,
//apenas o valor
let emptyArray = []
let numberArray = [2, 5, 6, 1, 8]
let arr1 = [1, 2, 3]
let arr2 = ['a', 'b', 'c']
let arr3 = [arr1, arr2]
let arr4 = [...arr1, ...arr2]
console.log(arr3) // [[1, 2, 3], ['a', 'b', 'c']]
console.log(arr4) // [1, 2, 3, 'a', 'b', 'c']
Funções em que o array resultante não é retornado
let numeros = [1, 2, 3];
numeros.push(4);
console.log(numeros); // [1, 2, 3, 4]
numeros.push(5, 6, 7);
console.log(numeros); // [1, 2, 3, 4, 5, 6, 7]
let numeros = [1, 2, 3, 4, 5, 6, 7]
numeros.pop()
console.log(numeros); // [1, 2, 3, 4, 5, 6]
let numeros = [1, 2, 3, 4, 5, 6, 7]
numeros.shift()
console.log(numeros); // [2, 3, 4, 5, 6, 7]
let numeros = [1, 2];
numeros.unshift(0);
console.log(numeros); // [0, 1, 2]
numeros.unshift(-2, -1);
console.log(numeros); // [-2, -1, 0, 1, 2]
numeros.unshift([-3]);
console.log(numeros); // [[-3], -2, -1, 0, 1, 2]