Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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_Arrays_Algorithm_Sorting_Javascript Objects - Fatal编程技术网

Javascript 按视图和日期进行趋势排序

Javascript 按视图和日期进行趋势排序,javascript,arrays,algorithm,sorting,javascript-objects,Javascript,Arrays,Algorithm,Sorting,Javascript Objects,我正在尝试实现一些自定义更改。我需要按流行度/趋势对我的帖子(对象数组)进行排序。简单地说,我想比较视图和发布日期,并获得趋势帖子 我尝试过以下代码: const array = [ { title: "1", views: 100, publishDate: 1 }, // publish date = 1 hour ago { title: "2", views: 400, publishDate: 2 }, // publish date = 2 hour ago { titl

我正在尝试实现一些自定义更改。我需要按流行度/趋势对我的帖子(对象数组)进行排序。简单地说,我想比较视图和发布日期,并获得趋势帖子

我尝试过以下代码:

const array = [
  { title: "1", views: 100, publishDate: 1 }, // publish date = 1 hour ago
  { title: "2", views: 400, publishDate: 2 }, // publish date = 2 hour ago
  { title: "3", views: 300, publishDate: 3} // publish date = 3 hour ago
];


const sortByTrending = array.sort((a, b) => b.views / Math.pow(b.publishDate, 1.8) - a.views / 
Math.pow(a.publishDate, 1.8));

console.log(sortByTrending);

// Output:
[
  {
    title:"1",
    views:300,
    publishDate:1
  },{
    title:"3",
    views:1000,
    publishDate:3
  },{
    title:"2",
    views:400,
    publishDate:2
  }
];

它不知怎么起作用了。但是有没有更好的方法来获得更准确的结果呢?

你想要什么?是实现排序功能的更好方法,还是更准确的“趋势”算法?是实现排序功能的更好方法。谢谢:)