var artm=new Array();
var dptm=new Array();
$.get("xxxxx",{bdate:"2016-06-07"},
function (data, textStatus){
for(i=0;i<data.length;i++){
artm[i]=Number(data[i].arr_time);
dptm[i]=artm[i]+Number(data[i].length);
$('#time_line').append(data[i].chart);
console.log(artm[i]);
}
});
console.log(artm[0]);
181的10是$.get()里输出的,186的undefined是console.log(artm[0]);输出的,那么$.get()里面运行的函数的变量不能调出来使用吗?
问题不在作用域,而在于下面这个概念
事件循环
你的
.get
操作是异步操作,186输出时artm
确实还没内容呢,所以你取他的第0个元素,当然是undefined
。 而181则是在get
的异步回调里,拿到的就是处理完的值