要推送的数组对象的 Typescript/Javascript 数组
Posted
技术标签:
【中文标题】要推送的数组对象的 Typescript/Javascript 数组【英文标题】:Typescript/Javascript array of Object of array to push 【发布时间】:2018-04-21 05:55:39 【问题描述】:myArray: any[] = [];
通过 Get API,我得到了响应,我将其推送到我已经定义的空数组(“myArray”),现在“myArray”看起来像这样
myArray = [
X[ 0:Object1, #1
1:Object2, #2
2:Object3 #3
],
Y[ 0:Object4, #4
1:Object5, #5
2:Object6 #6
],
Z[ 0:Object7, #7
1:Object8, #8
2:Object9 #9
]
];
现在我已经声明了一个新的空数组,
xyzArray: any[] = [];
我想将所有对象(即对象 1 到 9)推送到 myNewArray。我怎样才能做到这一点?我想要这样的东西:
xyzArray = [ 0:Object1, #1
1:Object2, #2
2:Object3, #3
3:Object4, #4
4:Object5, #5
5:Object6, #6
6:Object7, #7
7:Object8, #8
8:Object9 #9
];
【问题讨论】:
这取决于你到底想做什么,你需要一个克隆的元素,还是只是引用等。一些适当的示例代码可以帮助你轻松...... 您的代码都不是有效的 javascript。请解决这个问题,让我们清楚地了解您的需求,并提供您自己的尝试。 请分享问题代码sn-ps,喜欢的可以用jsfiddle.net @MuhammetCanTONBUL JSFiddle 不太理想。 Stack Overflow 上有内置的 Stack Snippet 工具。 我习惯用jsfiddle,但你说的是真的。 @Xufox 【参考方案1】:你可以在JS中使用reduce
和concat
。
var arr =[[1,2,3],[4,5,6],[7,8,9]];
var newArr = arr.reduce((a,b) => a.concat(b));
console.log(newArr)
【讨论】:
【参考方案2】:例如 你有下面的数组
var r = [[1,2,3], [4,5,6], [7,8,9]];
然后,您可以通过遍历r
的所有元素来合并1-9 中的所有元素。如下:
var t = []; for (a of r) for (b of a) t.push(b);
var r = [[1,2,3], [4,5,6], [7,8,9]];
var t = []; for (a of r) for (b of a) t.push(b);
console.log(t);
【讨论】:
以上是关于要推送的数组对象的 Typescript/Javascript 数组的主要内容,如果未能解决你的问题,请参考以下文章