Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.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 react.js按多个值对对象排序_Javascript_Reactjs_Sorting - Fatal编程技术网

Javascript react.js按多个值对对象排序

Javascript react.js按多个值对对象排序,javascript,reactjs,sorting,Javascript,Reactjs,Sorting,我有一个对象,它有多个值 {Object { value1: 1204 value2: 5 value3: blah }, { value1: 1204 value2: 3 value3: blah }, { value1: 942 value2: 1 value3: blah }, etc } 我需要做的是对对象进行排序,然后按value1和value2进行渲染。我在网上搜索中没有找到任何好的解决方案 我下面所说的

我有一个对象,它有多个值

{Object
  { value1: 1204
    value2: 5
    value3: blah
  },
  { value1: 1204
    value2: 3
    value3: blah
  },
  { value1: 942
    value2: 1
    value3: blah
  }, 
  etc
}
我需要做的是对对象进行排序,然后按
value1
value2
进行渲染。我在网上搜索中没有找到任何好的解决方案

我下面所说的显然不起作用。它首先按值1排序,然后按值2排序。我尝试了一个类似的链接,还有一些其他的尝试。但是我没有成功

sortObject = (results) => {
  results.sort((a, b) => a.value1 - b.value1);
  results.sort((a, b) => a.value2 - b.value2);
  console.log(results);
  return results;
 };
什么是对我的对象进行排序的有效方法

results.sort((a, b) => a.value1 - b.value1 || a.value2 - b.value2);
如果value1的减法为0(falsy so相等),则它将基于value2执行二次排序。您不能将它们单独排序,因为它不记得以前的排序


如果您想让值2具有更高的精度,请先执行它。

完美。非常感谢。我会在有能力的时候接受答案