javascript - 如何在一个文件中引用一个变量,并能够跨多个文件使用?
问题描述
我有一个问题可能看起来很简单并且有多个答案,但是我似乎无法让它正常工作。
我有一个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
解决方案
在<script>
块中,您正在引用全局对象data
中的属性(因为您的函数window
中没有声明变量)。data
但该let
语句不创建窗口对象的属性;对声明data
变量的访问仅限于scalar.js
文件。只var
创建窗口对象的属性。
将这一行从
let data = [10, 20, 30, 40];
到
var data = [10, 20, 30, 40];
推荐阅读
- python - 具有多个函数的 Python 代码,要求用户输入,输入后,代码结束并且不执行
- python - 在 Python 中从掩码网格制作图形
- javascript - 像 Redux-Saga 这样的框架可以在不使用生成器的情况下实现相同的功能吗?如果不是,为什么不呢?
- python - 用于语音到文本的 Python 循环
- python - 如何将for循环的每次迭代的结果存储在变量中
- node.js - Puppeteer/Playwright 是否可以将浏览器设置为无头启动时可见
- mithril.js - 为什么秘银子组件状态改变不触发更新?
- javascript - 需要帮助将变量设置为 false 并且按键为 true,但中间有足够的时间来实现对象
- mysql - Node.js 中 MySQL 的结果与终端不同
- swift - 如何在 Swift 中使用 Vision 或 AVFoundation 自动检测人脸并自拍?