Программа ничего не выводит (сообщение "Hello" не выводится), а вместо этого выдает ошибку SyntaxError о неожиданной лексеме . прямо перед строкой "Hi". Так как синтаксическая ошибка происходит после правильно сформированной команды console.log(..), если бы код JS выполнялся при построчном выполнении программы сверху вниз, можно было бы ожидать, что сообщение "Hello" будет выведено перед выдачей синтаксической ошибки. Но этого не происходит.
строка символов разбивается на осмысленные (для языка) фрагменты, называемые лексемами. Для примера возьмем программу: var a = 2;. Скорее всего, эта программа будет разбита на следующие лексемы: var, a, =, 2 и ;. Пробелы могут сохраняться как лексемы, а могут и не сохраняться — это зависит от того, содержательны они или нет.