javascript - 我有一个字符串,需要使用 JavaScript 中包含不同数量对象的数组中的字符串对象进行更新

标签 javascript

因此,在保存之前,我打算获取对象的详细信息,并在客户支付商品费用后从应用程序发送给客户的电子邮件中使用它们。

我的数据库中有一个数组列,它将字符串作为对象存储在数组中。每个字符串对象都是关于放入一个字符串中的订单的特定项目的一堆详细信息。

这是我访问数组的方式:

order.get('fullOrderDetails', [0, 1])

如果我的数组总是有 2 个对象,这很好,但在这种情况下,对象的数量总是会变化。

如果您查看下面的代码,我有一个 for 循环,它循环遍历数组中的对象。我需要一些如何动态执行此操作的方法: order.get('fullOrderDetails', [以逗号分隔的对象索引]) 动态。

Parse.Cloud.beforeSave("Dispatch", function(request, response) {

    // email
    var order = request.object;

    mandrill.initialize("API-KEY");

    var arrayLength = order.get('fullOrderDetails').length;
    for (var i = 0; i < arrayLength; i++) {


    }

    mandrill.sendEmail({
        message: {
          text: "Your order: " + order.get('fullOrderDetails', [0, 1]) + "has been processed and we will notify you when your order has been dispatched!",
          subject: "Thank you for your order!",
          from_email: "order-confirmation@aStore.com",
          from_name: "aStore.com!",
          to: [
            {
              email: order.get('email'),
              name: order.get('name')
            }
          ]
        },
        async: true
      }, {
        success: function(httpResponse) { response.success(); },
        error: function(httpResponse) { response.error("Uh oh, something went wrong"); }
      });
});

因此,使用索引号手动调用数组对象对我来说并不理想,因为对象的数量各不相同,因此我需要一种动态执行此操作的方法。

我该怎么做?

感谢您的宝贵时间。

最佳答案

如果我理解正确的话,你只需要根据每个索引的订购数量动态构建一个数组

[0,1,2,3,4...]

在这种情况下,您所需要的只是下面一行,然后将这个新的 arr 传递给您的 order.get 调用。

var arr=[], arrayLength = order.get('fullOrderDetails').length;
// this will make the arr -->[0,1,2.. ] 
for (var i = 0; i < arrayLength; i++) {
   arr.push(i);
}

// i pass it in below

mandrill.sendEmail({
    message: {
      text: "Your order: " + order.get('fullOrderDetails', arr) + "has been processed and we will notify you when your order has been dispatched!",
      subject: "Thank you for your order!",
      from_email: "order-confirmation@aStore.com",
      from_name: "aStore.com!",
      to: [
        {
          email: order.get('email'),
          name: order.get('name')
        }
      ]
    },
    async: true
  }, {
    success: function(httpResponse) { response.success(); },
    error: function(httpResponse) { response.error("Uh oh, something went wrong"); }
  });

关于javascript - 我有一个字符串,需要使用 JavaScript 中包含不同数量对象的数组中的字符串对象进行更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25274896/

相关文章:

javascript - jQuery Bootgrid 搜索错误

javascript - 在函数内为现有数组(全局变量)分配新值不起作用。为什么?

javascript - 如何处理 MEAN 应用程序中的数据库更改

javascript - Codecademy Javascript ...以及良好的!/正确的输出,但 Codecademy 不喜欢它

javascript - 从后台代码加载时运行 JS 方法

javascript - jQuery 中的正则表达式 : numbers within brackets

javascript - ES6 类原型(prototype) - 类型解析

javascript - 使用 Angular 从服务器端生成的下拉列表中获取选择属性值

javascript - 在 jVectorMap 中显示国家/州数据

javascript - reader.onload 关闭不触发