如何获取对象数组内的对象数组

img


用for渲染一个对象数组嵌套对象数组的数据结构,对于内部的ordercontlist。我有什么办法可以获取它并操作它。因为通常的做法是用一个在data中定义的变量来接收,但是因为是for渲染的,我只能用一个变量来接收外部的对象数组,但对于对象数组内的ordercontlist我没办法用变量接收

因为 你 tableData 是数组 。 那就需要 tableData[下标]来获取 。 或者直接循环 tableData

可以在内部的循环中使用索引来获取对象数组中的每个元素,然后对每个元素进行操作。例如,假设要渲染以下数据结构:

let data = [
  {
    id: 1,
    name: 'Product A',
    ordercontlist: [
      {
        id: 1,
        quantity: 10
      },
      {
        id: 2,
        quantity: 20
      }
    ]
  },
  {
    id: 2,
    name: 'Product B',
    ordercontlist: [
      {
        id: 3,
        quantity: 5
      },
      {
        id: 4,
        quantity: 15
      }
    ]
  }
]

可以使用嵌套的for循环来渲染这个数据结构:

for (let i = 0; i < data.length; i++) {
  let product = data[i];
  console.log('Product:', product.id, product.name);
  
  for (let j = 0; j < product.ordercontlist.length; j++) {
    let ordercont = product.ordercontlist[j];
    console.log('Order:', ordercont.id, ordercont.quantity);
  }
}

在内部的循环中,使用 product.ordercontlist 来访问嵌套的对象数组,并使用索引 j 来获取每个元素。然后可以对每个元素进行操作,例如打印其ID和数量。
内部的循环只能在外部循环中的每个元素上执行一次。在此示例中,我们使用 product 变量来接收外部的对象数组中的每个元素,并对其进行操作。

可以在循环中使用另一个 for 循环来遍历内部的 ordercontlist。例如,假设你有一个对象数组 orderlist,每个对象中都有一个 ordercontlist 数组,你可以像这样访问它们:


for (let i = 0; i < orderlist.length; i++) {
  const order = orderlist[i];
  console.log("Order ID:", order.id);
  // 遍历ordercontlist
  for (let j = 0; j < order.ordercontlist.length; j++) {
    const orderCont = order.ordercontlist[j];
    console.log("Order Cont ID:", orderCont.id);
    console.log("Order Cont Name:", orderCont.name);
    // 在这里进行其他操作
  }
}

这样就可以通过嵌套的循环来访问和操作内部的 ordercontlist 数组了。