javascript - 将数组从 JSON 文件转换为 Javascript 数组不起作用
问题描述
即使我在 stackoverflow 上阅读了很多关于此主题的相关文章,但我无法弄清楚我在这里做错了什么。
所以我有一个包含多个对象和一个数组(audiopeakdata)的json(peak.json)文件。它看起来像这样:
{"version": 2, "channels": 1, "data": [0.1, 0.3, 0,3 ... 0.1]}
现在我想从 json 文件中读取数据数组并将其解析为一个 javascript 数组:
var array = [];
$.getJSON('peak.json', function(data) {
array = data.data;
});
console.log(array);
但是控制台日志显示数组是空的——怎么可能呢?
谢谢你的帮助
解决方案
这是因为您试图从callback
不起作用的返回数据。使用async/await
:
async function getData() {
var data = await $.getJSON('peak.json')
var array = data.data;
console.log(array);
}
getData();
或者移动你的console.log
内部回调:
var array = [];
$.getJSON('peak.json', function(data) {
array = data.data;
console.log(array);
});
推荐阅读
- javascript - 我制作的这个简单的待办事项列表应用程序有什么问题?
- azure - 防止覆盖 Azure 容器注册表中的 Docker 映像标记
- python - Python生成所有3个字母组合
- android - Android ble扫描蓝牙附近的设备kotlin
- react-native - 如何使用 reducer 在 react-native 中正确发送数据?
- wordpress - Nginx 不将 add_header 指令应用于 WordPress JS、CSS、图像资源文件 URL 的标题
- python - 根据列的年月日映射具有不同行数的两个数据框
- angular - 具有对象内部动态参数的角度“接口”,但固定在“已实现”
- spring-boot - 使用 flyway-test-extension 创建名称为“flywayInitializer”的 bean 时出错
- intellij-idea - IntelliJ 2020.3 导出设置错误 - 写入文件