Oi Lucas tudo bem?
Pergunta difícil a sua rsrs. Para saber como o navegador lê precisaríamos analisar o código do navegador.
Mas como eu amo desafios vamos lá.
Vou pegar o código fonte https://github.com/chromium/chromium do Chromium que é o código aberto que gera o Google Chrome, ele é escrito em C++.
Ele tem mais de 39,814 mil páginas de códigos diferentes
Pesquisei por https://github.com/chromium/chromium/search?q=eventlistener&unscoped_q=eventlistener
Entrei no arquivo https://github.com/chromium/chromium/blob/a1e1598b6309e8a8094a3fbef99dfeb9c6e4e042/extensions/browser/event_listener_map.cc
E vi que ele acessa uma interface chamada listener.
E fiquei lendo vários arquivos da pesquisa https://github.com/chromium/chromium/search?p=2&q=listener&unscoped_q=listener
E não achei o código em si do listener rsrsrs.
Mas vamos lá, por padrão um listener fica ouvindo sem parar um elemento. Então o navegador fica toda hora verificando se o elemento foi clicado de uma forma otimizada que gaste pouco recurso.
Fiz um teste com um navegador numa página com um código com addEventListener e ele sempre fica consumindo um pouquinho de cpu, porque está ouvindo sem parar.
E quando alguém clica naquele botão que ele tava ouvindo, ele executa a função javascript que fora sido ordenado a fazer.
Espero ter ajudado!!!