Acessar uma variável global fora da tag script [RESOLVIDO]

Senhores, bom dia.

Estou com um problema para acessar uma variável de uma função que eu fiz, considerem que é um arquivo .jsp ou .asp

    <script>
    var w = $(window).width();
    var teste = true;

    $(document).ready(function () {

    //alert(w);

    if (w > 600) {

        teste = false;
        $("#desktop").css("display", "block");
        $("#mobile").css("display", "none");
        $("#central").css("display", "block");
    }
    else if (w < 600) {

        teste = true;

        $("#desktop").css("display", "none");
        $("#mobile").css("display", "block");
        $("#central").css("display", "none");
    }
})
    </script>
     
        if(teste == true){ //Não compila
        }

Eu já tentei fazer de tudo mas não está dando certo, ele simplesmente não reconhece a variável teste quando vou acessá-la.

Bom dia @PedroBaraldini!

Você só consegue “enxergar” o que foi definido entre as TAGs “script” (“mundo javascript”), dentro do mesmo “mundo javascript”; ou seja, qualquer coisa definida dentro das TAGs “script” que forem utilizadas fora das mesmas, não serão reconhecidas (se você não fizer referência ao “mundo javascript”).

Uma forma de fazer seu código funcionar (de uma maneira não muito elegante, mas apenas para fins de demonstração), seria colocar o código que não compila dentro de outras TAGs "script:

script
if(teste == true){ //Não compila
alert(‘Agora compila!’);
}
/script

Desta forma “voltamos ao mundo javascript”, e podemos utilizar o que já havíamos definido.

Mas se você está tentando utilizar uma variável “client-side” como sendo uma “server-side”; isto não será possível.

Espero tê-lo ajudado!