我有一个像这样的AJAX请求:
$.ajax({
type: "GET",
contentType: "application/json; charset=utf-8",
url: accessURL,
dataType: 'jsonp',
success: function (data) {
console.log(data);
$.each(data.results, function (i, val) {
//console.log(data);
marketId.push(val.id);
marketName.push(val.marketname);
});
console.log(marketName);
console.log(marketId);
返回的数据('console.log(data)')包含:
Object {results: Array[19]}
results: Array[19]
0: Object
id: "1003777"
marketname: "2.1 El Dorado Hills, Thursday Farmers Market"
1: Object
2: Object
3: Object
//... etc. each object has an id and marketname
问题在于console.log(marketName);
它返回错误的marketName。
我知道这可能和泥一样清楚,所以如果您需要查看整个脚本,请随时查看GitHub。您还可以在www.seedtip.com查看功能示例或要求澄清。
答案 0 :(得分:1)
在将数组传递给console.log();
之前,必须复制数组我有一个类似的问题,发现console.log()推迟了一段时间的实际输出(可能还取决于浏览器)。它存储对您的数组的引用,但稍后打印它。如果要传递字符串,这不是问题,但它适用于引用类型。您可能会看到console.log输出中后续更改的影响。