如何在for循环函数中调用?
截至目前,返回的singleObject
将显示为undefined
。
我想要达到的目的如下。
从每次迭代中创建我的对象
将此对象传递给另一个函数并进一步处理。我是否'返回'下一个功能。我很困惑如何在这个for循环中调用函数内的函数。
function createObjectFromArray(array) { // data is an array with multiple object
var len = array.length
for (var i=0; i<len; i++) {
var singleObject = {
fieldOne: array[i].someField.valueOne,
fieldTwo: array[i].someField.valueTwo
}
} //end of for loop
myNextFUnction(singleObject)
}
答案 0 :(得分:0)
您必须在循环之前初始化singleObject。在您的示例中,其范围是循环体。
答案 1 :(得分:0)
我建议您在某个异步方法返回数据数组之前调用createObjectFromArray()
。最有可能array
为空或未定义
如果存在数组长度,您在singleObject
仅定义的函数中也存在问题。这可能是您在下一个函数
但最重要的是,你的循环会在每次迭代时覆盖singleObject
,所以即使你的数据确实存在,你也只会将singleObject
的最后一次迭代传递给myNextFUnction
。
请向createObjectFromArray()
显示您的联系方式以获取进一步的帮助