Javascript:跨不同Javascript文件的变量范围

Use*_*034 8 javascript scope

我在我的一个JavaScript文件中定义了一个变量.我想在JavaScript文件中访问该变量的值.在一个文件中,我正在初始化该变量的值.

我无法访问另一个JS文件中的指定值.

有什么我想念的吗?

ale*_*lex 9

如果它们位于全局范围内,或者可以从全局范围访问,则应该能够访问它们.

例如,我在一个script元素的HTML中有一个像这样的对象文字......

<script type="text/javascript">
    var config = {
       basePath: '/path/'
    };
</script>
Run Code Online (Sandbox Code Playgroud)

我可以在任何其他后续JavaScript文件中访问config.basePath.


Nic*_*ver 8

它必须是一个全局变量,或者可以在同一范围内访问(例如,某个全局的其他属性),并且必须在访问它之前定义它,这意味着脚本的顺序包括问题.

例如,你不能在一个文件中有这个:

(function() {
   var something = "blah";
})();
Run Code Online (Sandbox Code Playgroud)

...并在下一个文件中访问它,因为该变量的作用域是该函数.


Zat*_*ter 6

此外,一旦全局定义,您可能需要通过窗口对象访问它,如下所示:window.your_variable OR window ['your_variable']