遍历json文件并对数组赋值
读取json文件然后push,但是按数组索引取值是undefined(最后的alert),在$.each里面photoArray是没问题的
function getPhoto(){
var photoArray=new Array();
$.getJSON('./public/js/photo.json',function(data){
$.each(data,function(entryIndex,entry){
photoArray.push(entry.photopath);
});
});
alert(photoArray[0]);
};
求大神指教
------解决方案--------------------那是因为getJSON异步的问题,你的getJSON执行动作还没执行完成就跳过去执行alert(photoArray[0]);了 所以这个photoArray是个空的数组 建议用同步才行
------解决方案--------------------getJSON这个是异步执行 非阻塞的,也就是可能在执行了alert,再执行push的
你可以把alert放在回调方法里面试试 就有数据了
还有你如果像把alert放在ajax外也执行的话 你必须把ajax设置为同步模式 使用$.ajax
并且设置async:false