Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Javascript: Scope of a Variable across different Javascript files

I defined a variable in one of my JavaScript files. I want to access the value of that variable among JavaScript files. In one file I am initializing the value of that variable.

I cannot access the assigned value in another JS files.

Is there anything that I am missing ?

like image 293
Puru Avatar asked Oct 26 '10 10:10

Puru


2 Answers

You should be able to access them if they are in the global scope or can be accessed from the global scope.

For example, I have a object literal like this in my HTML in a script element...

<script type="text/javascript">
    var config = {
       basePath: '/path/'
    };
</script>

Which I can access in any other subsequent JavaScript file with config.basePath.

like image 198
alex Avatar answered Nov 07 '22 07:11

alex


It has to be a global variable, or accessible in the same scope (e.g. a property on something else that's global), and it has to be defined before you're accessing it, meaning the order of your script includes matters.

You can't for instance have this in one file:

(function() {
   var something = "blah";
})();

...and access it in the next file, since that variable is scoped to that function.

like image 24
Nick Craver Avatar answered Nov 07 '22 06:11

Nick Craver