Como funciona um analisador de JavaScript?

Eu estou tentando entender como JS é realmente analisado. Mas minhas pesquisas retornam um projeto muito vagamente documentado de um "analisador / gerador" (nem sei o que isso significa), ou como analisar JS usando um mecanismo JS usando o método "parse" mágico. Eu não quero escanear através de um monte de código e tentar toda a minha vida para entender (embora eu possa, levaria muito tempo).

Eu quero saber como uma seqüência arbitrária de código JS é realmente transformada em objetos, funções, variáveis ​​etc. Eu também quero saber os procedimentos e técnicas que transforma essa seqüência em coisas, fica armazenada, referenciada, executada.

Existe alguma documentação / referências para isso?

questionAnswers(2)

yourAnswerToTheQuestion