Por que esse JavaScript funciona?

Eu estava olhando para a saída de algumas coisas do UglifyJS e aconteceu com algum código como o seguinte:

var a = 0;
var b = function () {
    return function () {
        a++;
    }(), 'Hello, World'
}();

Depois de executar esse códigoa é1 eb é a stringHello, World!.

À primeira vista, parece queb seráundefined já que parece que o resultado de uma função sem valor de retorno está sendo retornado, mas que é seguido por uma vírgula e uma string literal.

Por que isso funciona?
E por que o UglifyJS simplesmente não executa a função anônima e depois retornaHello, World! como a próxima declaração?

questionAnswers(4)

yourAnswerToTheQuestion