Javascript 如何在for循环中调用函数?
如何在for循环函数中调用? 现在,返回的Javascript 如何在for循环中调用函数?,javascript,node.js,for-loop,meteor,invoke,Javascript,Node.js,For Loop,Meteor,Invoke,如何在for循环函数中调用? 现在,返回的singleObject显示为undefined 我想达到的目标如下 从每次迭代创建我的对象 将此对象传递到另一个函数并进一步处理。我是否“返回”下一个函数。我不知道如何在这个for循环中调用函数中的函数 函数createObjectFromArray(数组){//data是一个包含多个对象的数组 var len=array.length 对于(var i=0;i您必须在循环之前初始化singleObject。在您的示例中,它的作用域是循环体。我建议您
singleObject
显示为undefined
我想达到的目标如下
函数createObjectFromArray(数组){//data是一个包含多个对象的数组
var len=array.length
对于(var i=0;i您必须在循环之前初始化singleObject。在您的示例中,它的作用域是循环体。我建议您在某个异步方法返回数据数组之前调用createObjectFromArray()
。结果很可能是array
为空或未定义
函数中还存在一个问题,即只有在存在数组长度的情况下才能定义singleObject
。这可能是您在下一个函数中看到它未定义的原因
但最重要的是,您的循环在每次迭代中都会覆盖singleObject
,因此即使数据确实存在,您也只能将singleObject
的最后一次迭代传递到myNextFUnction
请显示调用的位置createObjectFromArray()
寻求进一步帮助我不知道你想做什么。你为什么不直接调用for循环中的函数呢?你没有做任何异步的事情,为什么要使用。等等
?@Quntas,你是对的,我不需要使用。等等,我想要for循环中的下一个函数的原因是ration创建了一个对象。正在根据我的数据库检查此对象。
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)
}