Quando em aula o professor falou que usando const botoes = document.querySelectorAll('.app__card-button');
Estaríamos criando um "array" de botões isso me deixou confusa. Pesquisando a respeito achei a seguinte explicação: O resultado de document.querySelectorAll()
é uma coleção de elementos chamada de NodeList. No entanto, embora seja semelhante a um array, um NodeList não é um array JavaScript nativo, e, portanto, não possui os métodos de array, como .forEach()
, .map()
, etc. o que me deixou ainda mais confusa pois usamos o método .forEach()
mais a frente na mesma aula. Então pesquisando mais cheguei no conceito de "wrapping" ou "encapsulamento" de elementos, que para tornar a coleção de elementos NodeList em um array efetivamente precisaria usar Array.from()
ou um loop.
Então, usando o método forEach na função alteraContexto()
estaríamos encapsulando essa NodeList?