【发布时间】:2010-10-26 10:04:48
【问题描述】:
我在我的一个 JavaScript 文件中定义了一个变量。我想在 JavaScript 文件中访问该变量的值。在一个文件中,我正在初始化该变量的值。
我无法访问其他 JS 文件中的赋值。
我有什么遗漏的吗?
【问题讨论】:
-
你能告诉我们你是如何声明它的吗?以及具体在哪里
标签: javascript scope
我在我的一个 JavaScript 文件中定义了一个变量。我想在 JavaScript 文件中访问该变量的值。在一个文件中,我正在初始化该变量的值。
我无法访问其他 JS 文件中的赋值。
我有什么遗漏的吗?
【问题讨论】:
标签: javascript scope
如果它们在全局范围内或者可以从全局范围内访问,您应该能够访问它们。
例如,我的 HTML 中的 script 元素中有一个像这样的对象字面量...
<script type="text/javascript">
var config = {
basePath: '/path/'
};
</script>
我可以在任何其他后续 JavaScript 文件中使用 config.basePath 访问它。
【讨论】:
它必须是一个全局变量,或者在同一范围内可访问(例如,其他全局属性上的属性),并且必须在您访问它之前定义它,这意味着脚本的顺序包括事项。
例如,您不能将其放在一个文件中:
(function() {
var something = "blah";
})();
...并在下一个文件中访问它,因为该变量的作用域是该函数。
【讨论】:
此外,一旦全局定义,您可能需要通过以下窗口对象访问它:window.your_variable OR window['your_variable']
【讨论】: