Hello ~ 欢迎来到刘有钱的前端小窝 ❤
✍刘有钱的前端问题库
二、从后端请求到的列表数据,存在于对象数组中每个元素的不同属性对象中
🌰 整个样子康康
如图所示,列表数据大部分存在于material对象中,只有一条数据存在于inventory对象中
1.用 for…of 遍历对象数组,拿到数组中的每个对象元素
2.向每一个 material 对象中添加 inventory 属性
3.将每一个 material 对象用 push() 方法添加到 tableDataList 列表数据中
for (let item of res.rows) {
item.material['inboundType'] = item.inventory.inboundType
this.tableDataList.push(item.material)
}
完美撒花✧(≖ ◡ ≖✿)
继续完善知识点☍
⭐For In 循环与 For Of 循环 :
1.for in 语句循环遍历对象的属性,属性值为 obj [k]。
如果索引顺序很重要,请不要在数组上使用 for in。
索引顺序依赖于实现,可能不会按照您期望的顺序访问数组值。 当顺序很重要时,最好使用 for 循环、for of 循环或 Array.forEach()。
2.for of 语句循环遍历可迭代对象的值。它允许您循环遍历可迭代的数据结构,例如数组、字符串、映射、节点列表等。
以上摘自官网,太官方了简单来说就是用 for in 遍历对象,用 for of 遍历数组、字符串等。因为 for in 可能按照随机顺序遍历数组元素。
⭐向已存在的对象添加新属性
let obj = {} obj.fairy = '刘有钱' // 方法一 obj['sunflower'] = '太阳花' // 方法二 console.log(obj); // {fairy: '刘有钱', sunflower: '太阳花'}
⭐数组的 push() 方法
push() 方法:在数组结尾处向数组添加一个或多个新的元素,此方法会改变原数组。
参数直接写要添加的数组元素。
push() 方法返回新数组的长度。let arr = [{ a: 1 },{ b: 2 },{ c: 3 },] let x = arr.push({ d: 4 }, { e: 5 }) // 做了一步操作,一定会有返回值。用 x接收并打印 push()方法的返回值 console.log(x); // push()方法返回新数组的长度 5 console.log(arr); //原数组也有一个返回值,返回新数组 [{ a: 1 },{ b: 2 },{ c: 3 },{ d: 4 }, { e: 5 }]
总结
pink老师讲过,学习数组方法一定要明白:
① 这个方法是干什么的呀
② 有没有参数呀,如果有,参数要怎么写呀
③ 该方法的返回值是什么呀
④ 改不改变原数组呀
把用到过的数组方法都搞清楚
努力成为一个很哇塞的前端开发工程师✧(≖ ◡ ≖✿)
这篇博客介绍了如何处理从后端请求到的对象数组数据,特别是当列表信息分布在不同属性对象中时。通过使用for...of循环、添加属性以及Array.push()方法,将数据整理到tableDataList列表中。博客还讨论了for in和for of循环的区别,以及如何向对象添加新属性和理解数组的push()方法。
1万+





