javascript - 解析javascript for循环,创建多个不重复的对象

标签 javascript node.js parse-platform

我在 Javascript 中解析时遇到问题。我只是想循环遍历数组中的对象列表。如果 imageURL 与 Parse 中的 URL 匹配,则不执行任何操作。如果数组中没有 imageURL,则在 Parse 中将该行添加到 Parse。

我认为我的问题是同步性。目前它正在多次保存同一行(相同的名称、imageURL 和 fbURL)以进行解析。基本上保存了一行,并且重复了 70 次。

 for (var i = 0; i < listobjects.length; i++) {

      objName = listobjects[i]["name"]
      objImageURL = listobjects[i]["imageURL"]
      objfbURL = listobjects[i]["fbURL"]

      console.log("NAME: " + listobjects[i]["name"])

      // Check if record is in Parse
      var query = new Parse.Query(Recipe);
      query.equalTo("imageURL", listobjects[i]["imageURL"]);
      query.find({
        success: function(results) {
          if (results.length > 0) {
            // Do nothing. We have a result. Or maybe check if videoURL is present
            console.log("Object is already in DB.")
          } else {


            // Save the new object.
            var recipeObject = new Recipe();
            recipeObject.save({name: objName, imageURL:objImageURL, fbURL: objfbURL}, {
              success: function(object) {
                console.log("Object Saved!")
              },
              error: function(model, error) {
                console.log("Error saving object!")
              }
            });


          }
        },
        error: function(error) {
          alert("Error: " + error.code + " " + error.message);
        }
      });

    }

最佳答案

改变

for (var i = 0; i < listobjects.length; i++) {
  objName = listobjects[i]["name"]
  // ...
}

listobjects.forEach(function(obj) {
  // access obj.name, obj.imageURL
  // ...
});

创建一个范围,并且将在查找回调中使用正确的对象。

关于javascript - 解析javascript for循环,创建多个不重复的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35855052/

相关文章:

javascript - 引导 Strapi 角色权限

swift - 无论如何,要使用解析将对象保存到另一个用户吗?

javascript - 在 javascript/jquery 中使用 % 在数组中向后移动

javascript - 从两个数组创建一个对象

php - 查询以在 'threaded' View 中获取最近的消息

android - 在Cordova中基于解析电话的登录

javascript - 如何检查 Parse 用户是否从客户端 javascript 登录?

javascript - Angularjs 指令未显示

javascript - iPad 书签不弹出

javascript - 当未处理的 promise 拒绝错误时,nodejs 不断加载