首页 > 解决方案 > 如何在一个文件中引用一个变量,并能够跨多个文件使用?

问题描述

我有一个问题可能看起来很简单并且有多个答案,但是我似乎无法让它正常工作。

我有一个index.html文件,其中包括:

<html>
<head>
<script src="scalar.js"></script>
</head>
<body>
</body>
<script>
function myFunction() {
  for (i = 0; i < data.length; i++) {
    data[i] *= 5
  }
alert(data)
}
</script>
</head>

在同一个文件夹中,我的scalar.js文件只包含这个简单的行:

var data = [10, 20, 30, 40];

现在,我遇到的问题index.html是没有使用我在scalar.js. 我已经尝试放入<script src="scalar.js"></script>HTML 文件的正文,但仍然无济于事。

任何帮助将不胜感激!(另外我想保留 scalar.js 文件,而不是在索引文件中设置变量数据)。

更新:在此处查看代码https://github.com/amosallaei19/NEURepo

标签: javascriptvariablesscopereference

解决方案


<script>块中,您正在引用全局对象data中的属性(因为您的函数window中没有声明变量)。data

但该let语句不创建窗口对象的属性;对声明data变量的访问仅限于scalar.js文件。只var创建窗口对象的属性。

将这一行从

let data = [10, 20, 30, 40];

var data = [10, 20, 30, 40];

推荐阅读