我有点累了,我不知道为什么我在变量cat.data [0]上得到未定义的错误.id
var app = {
initialize: function() {
this.bindEvents();
},
bindEvents: function() {
function Trial() {
var index = 0;
var cat = [];
function getcat() {
.
.Makes a call to get JSON set of data in the form
.{"status" : "success", "data" : [{"id":"8", "url":"http:\/\/google.com", "description":"Search Engine"}]}
.
request.success(function (data) {
cat = $.parseJSON(data);
if (cat.status === "error") {
alert(cat.message);
}
console.log(cat.data[index].id);
alert(cat.data[0].id);
});
request.error(function (data, status) {
alert("Error connecting to API:" + status);
});
}
}
function tests() {
getcat();
console.log(cat.data[index].id);
}
因此,当我们调用测试函数时,它会将数据拉出并放入数组中,并且console.log和alert的条目完全按照它们的方式执行并显示id字段值。但是,当它返回测试并执行console.log条目时,它将失败并显示:
"无法获得财产' 0'未定义或空引用"
它是主功能中的全局变量,为什么它无法访问它?