javascript - 无法将元素推送到数组 Javascript
问题描述
我确信这很简单,但我并不是真正的 JS 开发人员。
我有以下函数设置两个数组等于 json 响应,以便我可以将数组加载到 Chart.js
$(document).on("turbolinks:load",function(){
var months = [];
var values = [];
$.getJSON({url: "/reports/graph_data.json", success: function(data){
for (var i = 0, len = data.length; i < len; i++) {
months.push(data[i][0]);
values.push(data[i][1]);
}
alert(months); //DISPLAYS CORRECT MONTHS
}});
alert(months); //DISPLAYS NOTHING
});
请注意,我在代码中有两个警报。第一个警报显示响应的月份,如我所料,但第二个警报是空的。为什么是这样?当我在 getJSON 函数之外引用数组时,我会认为范围不会被破坏。
提前致谢。
解决方案
推荐阅读
- python - pandas 系列使用 gt 不是 pythonic 的方式吗?
- laravel - laravel 将 html 选择下拉菜单“选择”在两个数据处
- node.js - 如何从环回 3 中手动创建的路由和控制器添加 API 文档?
- ruby-on-rails - 具有 x-amz-server-side-encryption 策略的 aws s3 存储桶中的问题不允许 rails5 上传图像但允许在 rails4 中
- amazon-web-services - 带有 .NET 的 AWS - 从 CloudWatch 读取日志 - 没有返回日志数据
- ubuntu-18.04 - 安装提供 ACPI 分区固件的 Ubuntu 的问题是错误
- exchangewebservices - makeEwsRequestAsync 是否在混合模式下工作?
- angular - 以角度在 HTTP 正文中声明和分配数组
- javascript - 当用户单击输入时如何聚焦输入?
- c# - 面板内 Glcontrol 顶部的一个图片框