Javascript 将循环中的值设置为在第一次循环执行中设置的值

Javascript 将循环中的值设置为在第一次循环执行中设置的值,javascript,mongodb,meteor,collectionfs,Javascript,Mongodb,Meteor,Collectionfs,我要做的是将一个变量设置为第一次循环执行时设置的值 作为背景信息:我正在使用CollectionFS在我的meteor应用程序中上载多个文件。现在,我想将自定义字段值parent设置为所有文件(第一个文件除外)的第一个插入文件的id。 我通过数据获取id。\u id 我的尝试: 当我为每个上传的文件使用循环时,我认为第一个文件的data没有定义,所以我检查它是否有值。在这种情况下,parent也将是未定义的。对于第二个文件,data已设置,因此parent应获取data.\u id作为其值 但是

我要做的是将一个变量设置为第一次循环执行时设置的值

作为背景信息:我正在使用CollectionFS在我的meteor应用程序中上载多个文件。现在,我想将自定义字段值
parent
设置为所有文件(第一个文件除外)的第一个插入文件的id。 我通过
数据获取id。\u id

我的尝试:

当我为每个上传的文件使用循环时,我认为第一个文件的
data
没有定义,所以我检查它是否有值。在这种情况下,
parent
也将是未定义的。对于第二个文件,
data
已设置,因此
parent
应获取
data.\u id
作为其值

但是这不能正常工作,因为
父项
总是
未定义

FS.Utility.eachFile(event, function (file) {
    var newFile          = new FS.File(file),
        parent           = (data) ? data._id : undefined;
        newFile.metadata = { parent: parent };

    var data = Images.insert(newFile);
    console.log(data._id); // id of the inserted file

});

数据
在每次迭代中都被重新定义。在循环之外声明它

var data;
FS.Utility.eachFile(event, function(file) { ... });