Nomenclatura
Inicialmente chamada de Mocha, então LiveScript, a linguagem foi finalmente renomeada para JavaScript.
Isto se deve possivelmente a parceria entre Netscape e Sun Microsystems da época.
Muitos também categorizam isto como uma jogada de marketing da Netscape, vendo que Java era a linguagem web quente do momento.
Até hoje o nome JavaScript causa confusão para quem está começando, pois JavaScript não possui relação com Java.
ECMAScript
É o nome da linguagem de programação padronizada pela Ecma International na especificação ECMA-262.
JavaScript moderno é uma implementação do ECMAScript, logo segue a especificação ECMA-262.
Note que JavaScript surgiu antes do ECMAScript.
Momento histórico
JavaScript nasceu na empresa Netscape, desenvolvido por Brendan Eich.
Seu sucesso foi tão grande que a Microsoft desenvolveu um dialeto compatível, chamado JScript (para não infringir marcas registradas).
A Netscape então submeteu o JavaScript para a Ecma International para consideração como um padrão industrial.
Desta forma, surgiu a especificação ECMA-262, que se refere a linguagem como ECMAScript.
Momento histórico
Assim sendo, pode-se dizer que ECMAScript é o JavaScript padronizado.
Todas implementações recentes do JavaScript seguem o padrão ECMA-262.
(embora certas implementações tenham algumas adições)
Logo, ECMAScript e JavaScript são quase que sinônimos, sendo ES a especificação e JS a implementação.
Note que também surgiram outras implementações derivadas do ECMAScript, como ActionScript por exemplo.