gpt4 book ai didi

javascript - 合并两个多维数组,但不能使用 datetime 进行复制

转载 作者:行者123 更新时间:2023-11-30 17:57:17 25 4
gpt4 key购买 nike

我希望将两个数组合并为一个,但不能使用日期时间进行复制,基本上不能合并具有相同日期时间的两个数组的两个结果。

  • 在每个数组中,日期时间从不重复。
  • 两个数组具有相同的结构,具有相同的确切位置。
  • 每个阵列有+60个子阵列。

例子:

Array1 = [[a,b,0000-00-00 00:00],[c,d,0000-00-00 00:59],[e,f,0000-00-00 00:10]];
Array2 = [[z,x,0000-00-00 00:00],[h,s,0000-00-00 00:49],[e,f,0000-00-00 00:20]];


Array12 = [[a,b,0000-00-00 00:00],[c,d,0000-00-00 00:59],[e,f,0000-00-00 00:10],[h,s,0000-00-00 00:49],[e,f,0000-00-00 00:20]];

我怎样才能使这项工作?我尝试了很多功能,但无法正常工作。

谢谢。

最佳答案

如果我是对的,您正在尝试合并基于时间戳的数组。试试这个 fiddle

var Array1 = [
['a', 'b', '0000-00-00 00:00'],
['c', 'd', '0000-00-00 00:59'],
['e', 'f', '0000-00-00 00:10']
];
var Array2 = [
['z', 'x', '0000-00-00 00:00'],
['h', 's', '0000-00-00 00:49'],
['e', 'f', '0000-00-00 00:20']
];

function mergeArrays(arr1, arr2) {
var merger = {};

for (var i = 0; i < arr1.length; i++) {
merger[arr1[i][2]] = [arr1[i][0], arr1[i][1], arr1[i][2]];
}

for (var i = 0; i < arr2.length; i++) {
if (!(arr2[i][2] in merger)) {
merger[arr2[i][2]] = [arr2[i][0], arr2[i][1], arr2[i][2]];
}
}

var output = [];
for (var key in merger) {
output.push(merger[key]);
}
return output;
}

var result = mergeArrays(Array1, Array2);
console.log(result);

关于javascript - 合并两个多维数组,但不能使用 datetime 进行复制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17862014/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com