angular - Angular 2 forEach 用于数组数组
问题描述
我有一个来自如下结构的 json 对象响应,我必须从这个结果中解析数据。
[CGOLD-1: Array(6), CGOLD-2: Array(6), MGOLD-1: Array(6), MGOLD-2: Array(6), MGOLD-3: Array(6), …]
我试过这样检查,我的类型脚本代码,
baserates: Object = {};
oldbaserates: Object = {};
this.liverateservice.setcallback((data)=>{
this.baserates = data;
this.baserates.forEach((item) => {
console.log(item);
//newArray.push(Object.assign({}, item));
});
});
但是我的控制台不能正常工作,我必须像这样克隆对象
deepClone(oldArray: Object[]) {
let newArray: any = [];
oldArray.forEach((item) => {
newArray.push(Object.assign({}, item));
});
return newArray;
}
您能否帮助任何人以角度 2 处理这种类型的数据结构。
解决方案
您可以使用以下方法展平数组数组
const flatten = (array: any[][]) => (array ? array.reduce((output, array) => [...output, ...array], []) : array);
const flatArray = flatten(data);
现在 flatArray 只是一个数组。
你可以在这里看到它的演示
推荐阅读
- css - 对文本中的链接使用 a::after 但排除链接的图像
- javascript - JavaScript - 事件相关目标不适用于 onClick
- php - Sendgrid PHP API - 如何授权我的电子邮件作为发件人?
- java - PDFBox - 从多个 PDF 中读取文本并将其加载到多个文本文件中
- arrays - Swift - 合并两个数组,同时删除重复键并将数组值添加在一起
- api - 使用 Gigya 在 Azure Kubernetes 上进行微服务身份验证
- python - 在不使用内置函数的情况下计算子字符串的出现次数
- reactjs - 在 React 应用程序中使用查询字符串中的 JWT 令牌登录
- java - Java Jena SPARQL 查询未检索结果
- java - 我的应用程序在 onFocusChange() 方法执行结束时崩溃