Executando verificação de segurança...
2

O post está errado. Dá pra verificar com um teste simples (é basicamente o mesmo código que tem lá, só que simplificado):

function f() {
    var infoGlobal = "bla";
}
 
console.log(infoGlobal); // erro!

Esse código dá erro, veja. Mais precisamente, o erro é "ReferenceError: infoGlobal is not defined". Ou seja, a variável não está definida.

"Ah, mas é porque vc não executou a função"

Não, assim também dá o mesmo erro:

function f() {
    var infoGlobal = "bla";
}
 
f();
console.log(infoGlobal); // erro!

Para que a variável esteja no escopo global, na verdade não devemos usar o var (e nem o let ou const):

function f() {
    infoGlobal = "bla";
}
 
f();
// agora funciona
console.log(infoGlobal);

Mas lembre-se que só funciona se a função for chamada. Ou seja, se for assim:

function f() {
    infoGlobal = "bla";
}

// erro!
console.log(infoGlobal);

Dá erro do mesmo jeito. Afinal, a variável só é criada se a função for executada.

Por fim, vale sempre consultar a documentação. Lá deixa bem claro que uma variável declarada com var dentro de uma função é local àquela função.

Esse é o problema da Internet, qualquer um pode escrever qualquer coisa e é difícil separar o joio do trigo. Neste caso eu acho bem grave porque me parece que o cara nem sequer testou o código (se testasse, veria o erro na hora).

Carregando publicação patrocinada...
1

foi exatamente o que pensei ("que ele não executou"). Eu até fiz uns testes aqui, só para garantir, mas quiz tirar essa dúvida, pois já é a segunda vez que vejo alguém cometendo esse erro.