函数jquery的未定义返回

时间:2016-05-10 20:23:58

标签: javascript jquery

我是jquery的新手,我正在努力从jquery promise获得数组函数返回。函数返回undefined,但我想要数组返回。任何人都可以打击为什么我得到未定义的回报?谢谢

contractEnd

1 个答案:

答案 0 :(得分:0)

当你在$ .each中返回windValue时,你不再具有范围功能了。

在您的第一个then结束时,下一个承诺没有返回值,因此第二个版本的windValue为undefined

你不必在$ each中返回windValue,你只需要完成你的迭代,然后返回第二个值。

function getWinddirection() {
  //first change
  var windValue = [];
  actualData.then(function(result) {
    $.each(result["timeseries"], function(i, Daydata) {
      for (var i = 0; i < Daydata.length; ++i) {
        if (Daydata[i].validTime.split("T")[1] == "12:00:00Z") {
          //second modification
          windValue.push(Daydata[i].wd)
        } else {}
      }
    })
    //third modification
    return windValue;
  }).then(function(windValue) {
    return windValue;
  })
}