Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用数组对象中的值对对象数组进行排序 编辑:看来我想得太多了,想要一个简单的Array.sort()!_Javascript_Arrays_Sorting_Object - Fatal编程技术网

Javascript 使用数组对象中的值对对象数组进行排序 编辑:看来我想得太多了,想要一个简单的Array.sort()!

Javascript 使用数组对象中的值对对象数组进行排序 编辑:看来我想得太多了,想要一个简单的Array.sort()!,javascript,arrays,sorting,object,Javascript,Arrays,Sorting,Object,我有一个对象数组,我想根据另一个对象的值进行排序,该对象的值是包含ts的数组。我想要排序的对象数组有一个id引用,该引用指向包含要排序的ts值的对象,这些数组以最高的ts始终位于[0]位置进行排序。下面是一些代码片段来解释: 要排序的对象数组 包含时间戳的数组的对象 预期排序结果 您可以获取被引用对象的第一项的值进行排序 var数组=[{id:'abc'},{id:'def'},{id:'ghi'}], object={abc:[{ts:1},{ts:6}],def:[{ts:4},{ts:2

我有一个对象数组,我想根据另一个对象的值进行排序,该对象的值是包含
ts
的数组。我想要排序的对象数组有一个
id
引用,该引用指向包含要排序的
ts
值的对象,这些数组以最高的
ts
始终位于
[0]
位置进行排序。下面是一些代码片段来解释:

要排序的对象数组 包含时间戳的数组的对象 预期排序结果
您可以获取被引用对象的第一项的值进行排序

var数组=[{id:'abc'},{id:'def'},{id:'ghi'}],
object={abc:[{ts:1},{ts:6}],def:[{ts:4},{ts:2}],ghi:[{ts:3},{ts:5}]};
array.sort((a,b)=>object[a.id][0].ts-object[b.id][0].ts);
console.log(数组)

作为控制台包装{max height:100%!important;top:0;}
排序的逻辑是什么?您尝试了什么?你能附上你的密码吗?我很尴尬答案这么简单。谢谢你提醒我不要想得太多!
[
  { id: 'abc' },
  { id: 'def' },
  { id: 'ghi' }
]
{
  abc: [{ ts: 6 }, { ts: 1 }],
  def: [{ ts: 4 }, { ts: 2 }],
  ghi: [{ ts: 5 }, { ts: 3 }]
}
[
  { id: 'abc' },
  { id: 'ghi' },
  { id: 'def' }
]