Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.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 按字符串对嵌套对象进行排序(多次)_Javascript_Node.js_Sorting_Object_Lodash - Fatal编程技术网

Javascript 按字符串对嵌套对象进行排序(多次)

Javascript 按字符串对嵌套对象进行排序(多次),javascript,node.js,sorting,object,lodash,Javascript,Node.js,Sorting,Object,Lodash,我有两个非常嵌套的对象,我想根据它们是否包含字符串对它们重新排序。理想情况下,我希望根据它们是否有任意数量的字符串对它们进行多次重新排序 我想按一个类别对它们进行重新排序,然后再按另一个类别对列表进行两次排序(我知道这不是一个很好的说法) 顶级对象 [ { name: { en: 'Even Mini-er Cooper (test)' }, categories: { en: [Array] }, }, { name: { en: 'Mini Cooper

我有两个非常嵌套的对象,我想根据它们是否包含字符串对它们重新排序。理想情况下,我希望根据它们是否有任意数量的字符串对它们进行多次重新排序

我想按一个类别对它们进行重新排序,然后再按另一个类别对列表进行两次排序(我知道这不是一个很好的说法)

顶级对象

[
  { 
    name: { en: 'Even Mini-er Cooper (test)' },
    categories: { en: [Array] },
  },
  {
    name: { en: 'Mini Cooper' },
    categories: { en: [Array] }, 
  }
] 
如何获得我想要比较的东西

products.map(o => o.fields.categories.en.map(o => o.fields.name));

[ 
  [ 
    { en: '13+ / Movies/Animations/SciFi - Cartoons' },
    { en: '13+ /  Movies/Animations/SciFi' } 
  ],
  [ 
    { en: '13+ / Coding & Gaming' },
    { en: '13+ / Coding & Gaming - Boost' } 
  ] 
]
我已经查看了lodash的
.orderBy
.sortBy
——但我看不出如何添加搜索参数


感谢您提供的任何见解

预期输出和确切输入是什么?“对列表进行两次排序”没有真正意义,但如果您的意思是“排序一次,然后对第一次排序中相等的项目进行排序”,则可以这样做。不管嵌套是什么,使用您提到的
lodash
函数都应该可以实现这一点,但当前问题中存在太多的模糊性,无法提供更多帮助。如果您包括一个(或几个)输入/输出示例,我相信我们能够提供帮助