Javascript 将对象数组推入数组的一种方法
下面是要推送到数组中的对象数组Javascript 将对象数组推入数组的一种方法,javascript,react-native,Javascript,React Native,下面是要推送到数组中的对象数组 [{"a":11,"b":21},{"a":31,"b":41},{"a":10,"b":20}] 如何从上面实现下面这个数组 "array": [ [ [ 11, 21 ], [ 31, 41 ], [ 10, 20 ], [
[{"a":11,"b":21},{"a":31,"b":41},{"a":10,"b":20}]
如何从上面实现下面这个数组
"array": [
[
[
11,
21
],
[
31,
41
],
[
10,
20
],
[
11, //first object again
21
]
]
]
使用数组映射推送元素,但无法找到再次推送第一个对象的方法
vararray1=[{a:11,b:21},{a:31,b:41},{a:10,b:20}];
var array2=[array1.map(item=>[item.a,item.b]);
控制台日志(array2)代码>这可以通过在完成映射后再次手动推送第一个元素来完成
unshift()
方法可用于推送到阵列的前端
var array2 = [array1.map(item=>[item.a, item.b])];
array2.unshift([array1[0].a, array1[0].b])
您只需添加另一行代码来插入第一个索引
vararray1=[{a:11,b:21},{a:31,b:41},{a:10,b:20}];
var array2=[array1.map(item=>[item.a,item.b]);
array2[0].push([array1[0].a,array1[0].b]);
控制台日志(array2)代码>您可以这样做,
vararray1=[{a:11,b:21},{a:31,b:41},{a:10,b:20}];
array1.push(array1[0])
var array2=[array1.map(item=>[item.a,item.b]);
控制台日志(array2)代码>我同意slappy的答案,但不需要应用slice
const arr=[{a:11,b:21},{a:31,b:41},{a:10,b:20}];
常量arr2=[arr.map(item=>[item.a,item.b]);
arr2.push(arr2[0][0])
你需要推到array2[0]
@slappy Edited,我的意思是说unshift
你不想要unshift
,因为他想要它在最后。但是仔细看看OP的结果。他有[[…],[…],[…]]
如果arr2
中的项目将来会发生变异,那么变异第一个项目也会改变最后一个项目,因为没有复制。如果没有,那么就不需要.slice()
,但我可能仍然会这样做。