gpt4 book ai didi

javascript - 无法从另一个 javascript 文件引用 javascript 数组

转载 作者:行者123 更新时间:2023-11-28 04:27:31 24 4
gpt4 key购买 nike

我正在尝试使用 highcharts 创建一个图表,其中我无法获取存储在另一个 js 文件中的数据。

我的 main.js 文件包含创建图表的所有代码。它有系列部分。

series: [{
name: 'Desktops',
data: '/data/desktop.js',
tooltip: {
valueDecimals: 2
}
}]

这里我想引用另一个js文件中的数据。文件的名称是desktop.js,它只有下面的数组

var desktopData = [[1475272800000, 117759], [1475359200000, 106147], [1475445600000, 147747], [1475532000000, 302031], [1475618400000, 520539], [1475704800000, 245353], [1475791200000, 180376], [1475877600000, 78819], [1475964000000, 90466], [1476050400000, 257822], [1476136800000, 284465], [1476223200000, 242898], [1476309600000, 297186], [1476396000000, 268069], [1476482400000, 183149], [1476568800000, 410442], [1476655200000, 1117798], [1476741600000, 1274668], [1476828000000, 1331799], [1476914400000, 1230213], [1477000800000, 888251], [1477087200000, 572050], [1477173600000, 931144], [1477260000000, 1556641], [1477346400000, 1526736], [1477432800000, 1310133], [1477519200000, 1207422], [1477605600000, 785556], [1477692000000, 487264], [1477778400000, 787714], [1477868400000, 942663]];

如何引用另一个文件中定义的数组?

最佳答案

您使用任何类型的框架吗?要在另一个文件中加载 JS 文件,您需要以某种方式要求它,可以使用 AMD、ES 导入或任何其他方式(同步或异步)。

如果您只是将文件添加到 HTML(使用脚本标记),那么您唯一要做的就是确保文件已加载(DOMContentLoaded 事件),然后,您必须附加数据覆盖全局范围。

浏览器中的全局范围称为 window每次当您使用 var 未在您的范围内声明的变量时这意味着JS正在全局范围内搜索它。为了将某些内容分配给全局范围,您可以省略 var或像这样显式分配它:

window.desktopData = [];

// And then in another file, assuming that the data is ready

var myData = window.desktopData

另请记住,将文件包含在 <script> 中标签通常意味着它们会阻止您的浏览器,并且文件的顺序很重要(至少当您想要依赖一个文件已经在另一个文件之前加载的事实时)。我建议使用某种导入系统:

http://requirejs.org/docs/whyamd.html

关于javascript - 无法从另一个 javascript 文件引用 javascript 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44908253/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com