我需要创建一个javascript变量,其行为与我硬编码的行为相同
var test = [{"first" : "second"}];
等等。但是,我需要从外部的本地.json文件加载数据,并将该数据设置为等于变量。我做了很多不同的尝试,比如
var test;
jQuery.ajax({
'async': false,
'global': false,
'url': "sequence.json",
'dataType': "json",
'success': function (data) {
test = data;
}
});
但是在所有情况下,永远不会将原始测试变量设置为将其硬编码为JSON对象。通常,我根本无法设置测试值。有什么好办法可以解决这个问题?
答案 0 :(得分:1)
如果您的ajax响应类似于data = [{“first”:“second”}];那么你可以得到如下的价值。但是json格式不同,那么你必须先指定你的格式。
var test;
jQuery.ajax({
'async': false,
'global': false,
'url': "sequence.json",
'dataType': "json",
'success': function (data) {
data = [{"first" : "second"}];
test = data;
for(var i in test){
console.log(test[i].first);
alert(data[i]);
}
}
});