Manipualando DOM
Buscando e selecionando elementos
getElementById
retorna um element é o mais rápido
const id = document.getElementById('id')getElementsByClassName
retorna um HTMLCollection
const className = document.getElementsByClassName('className')getElementsByTagName
retorna um HTMLCollection
const tag = document.getElementsByTagName('tag')querySelector
retorna um element
const tag = document.querySelector('tag')
const id = document.querySelector('#id')
const className = document.querySelector('.className')querySelectorAll
retorna um NodeList, é usado no forEach
const tag = document.querySelectorAll('tag')
const id = document.querySelectorAll('#id')
const className = document.querySelectorAll('.className')Manipulando conteúdo
textContent
retorna o conteudo textual
const text = document.querySelector('tag').textContentinnerText
adiciona texto
document.getElementById('id').innerText = 'Text'innerHTML
adiciona ou retorna HTML
document.getElementById('id').innerHTML = '<tag>Text</tag>'value
valor de qualquer coisa inclusive inputs
const value = document.getElementById('id').value
Alterando estilos
style.{property} || Altera o CSS usando a propriedade em camel case
classList
    add()
    remove()
    toggle()
Navegando pelos elementos
parentNode (tá no nome imbecil)
parentElement
childNodes (pega NodeList) || pega espaços no HTML
children (HTMLCollection)
childElementCount
firstChild
firstElementChild
lastChild / .lastElementChild
remove()
Siblings nextSibling nextElementSibling previousSibling previousElementsSibling
Criando Elementos
createElement()
Trabalhando com propriedades dos elementos
setAtribute()
getAtribute()
removeAtribute()
Inserindo elementos no HTML
insertBefore()
insertAfter()
append() / .appendChild() || Depois de tudo
prepend() || Antes de tudo
Eventos
addEventListener("event", function(event)) || ouve um evento e executa a função passada para ele
    Load  || São todos eventos possiveis para passar para o Listener
    Click
    Scroll
    Keydown
    Change
    Submit
Event
    Target
        Id
        className
    Type
    clientX / clientY (relative to document)
    offsetX / offsetY (relative to element)
    preventDefault()