Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/37.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 按字母顺序对api的json响应排序_Javascript_Node.js_Json_Express - Fatal编程技术网

Javascript 按字母顺序对api的json响应排序

Javascript 按字母顺序对api的json响应排序,javascript,node.js,json,express,Javascript,Node.js,Json,Express,我正在尝试按字母顺序接收GETAPI响应。我试过这个问题的第二个答案: 我的javascript代码 function OrderListBy(prop) { return function (a, b) { if (a[prop] > b[prop]) { return 1; } if (a[prop] < b[prop]) { return -1; } return 0; }; } router.get('

我正在尝试按字母顺序接收GETAPI响应。我试过这个问题的第二个答案:

我的javascript代码

function OrderListBy(prop) {
  return function (a, b) {
    if (a[prop] > b[prop]) {
      return 1;
    }
    if (a[prop] < b[prop]) {
      return -1;
    }
    return 0;
  };
}

router.get('/countries', async (req, res) => {
  try {
    const countries = await Country.find({}, 'name');
    const sortedCountries = countries.sort(OrderListBy('name'));
    res.send(sortedCountries);
  } catch (e) {
    res.status(500).send();
  }
});
它应该按字母顺序在印度之前返回中国。它是按国家创建的顺序返回国家。
这不管用。我做错了什么?

您可以在查询本身中对其进行排序。试试这个

await Country.find({}, {'name': 1}).sort({name: 1})
注意:在内部排序中,根据需要的顺序,遵循以下值

1 Ascending
-1 Descending

当你说它不起作用时,你的意思是它给了你一个错误吗?还是它没有归还你想要的?您可以共享输出吗?为什么不在这里排序:
wait Country.find({},'name')?排序似乎正常。
国家/地区的输出是什么?
?输出已更新请查看。
1 Ascending
-1 Descending