考虑以下嵌套的对象数组:
const data = [ { id: 1, name: 'John', items: [{ id: 11, name: 'Item 1' }, { id: 12, name: 'Item 2' }] }, { id: 2, name: 'Mary', items: [{ id: 21, name: 'Item 3' }, { id: 22, name: 'Item 4' }] }, ]
我们希望可以遍历所有的对象和它们的嵌套数组并限制输出的值。
可以使用嵌套的 for 循环来实现:
for (let i = 0; i < data.length; i++) {
const { id, name, items } = data[i];
console.log(id: ${id}, name: ${name}
);
for (let j = 0; j < items.length; j++) {
const { id: itemId, name: itemName } = items;
console.log( item id: ${itemId}, item name: ${itemName}
);
}
}
使用 limit 参数可以限制输出的值:
const limit = 2;
for (let i = 0; i < data.length; i++) {
const { id, name, items } = data[i];
console.log(id: ${id}, name: ${name}
);
for (let j = 0; j < items.slice(0, limit).length; j++) {
const { id: itemId, name: itemName } = items[j];
console.log( item id: ${itemId}, item name: ${itemName}
);
}
}
在上面的代码示例中,我们使用 slice() 方法来限制 items 数组的大小,以便仅输出限制范围内的值。
这样,我们就可以遍历所有的对象和它们的嵌套数组,并限制输出的值。