我得到了这个 HTML 页面。我想从 2 个具有公共(public)变量的 javascript 文件访问变量。我必须从这些变量中获取与各自 javascript 相关的值。我尝试使用 <script>
加载它们但是当我访问js变量时,它只从最后一个js文件中获取值,换句话说,最后加载的js文件覆盖了变量值,只有这些值可以访问。我非常感谢这方面的帮助。
谢谢!!!
最佳答案
您需要为变量命名空间或使用不同名称的变量。听起来你正在做的相当于:
var x = 'foo';
var x = 'bar';
console.log(x);
> bar
这应该是有道理的。但是,如果您使用 namespace ,事情会更好。考虑两个文件,script-1.js
和 script-2.js
:
// script-1.js
var s1 = {
x:'foo'
}
// script-2.js
var s2 = {
x:'bar'
}
……那么……
console.log(s1.x);
> foo
console.log(s2.x);
> bar
当然,这是一个相当陈腐的例子。
编辑
如果您不能自己更改文件,请执行此操作 - 在加载脚本 1 之后但在加载脚本 2 之前将值保存为其他名称/对象:
<script type="text/javascript" src="script-1.js"></script>
<script type="text/javascript">
var s1 = {
// Save off values here
x:x,
y:y
}
</script>
<script type="text/javascript" src="script-2.js"></script>
// Then...
console.log(s1.x); // will output the value from script-1.js
console.log(x); // will output the value from script-2.js
不漂亮,但应该可以正常工作。
关于javascript - 你如何加载 2 个 javascript 文件,它们之间可能有公共(public)变量并在 HTML 页面上访问它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14327752/