首页 > 解决方案 > Javascript 数组的自定义排序功能适用于 Chrome 控制台,但不适用于 React

问题描述

所以这是一个非常奇怪的问题。我有以下排序功能:

  sortByKey(array, key) {
    console.log(array, key)
    return array.sort(function(a, b) {
        var x = a[key]; var y = b[key];
        return ((x < y) ? 1 : ((x > y) ? -1 : 0));
    });
  }

它基本上只是按指定的键对 Javascript 对象进行排序。

当我手动(在控制台中)传递一个数组并键入它时,它会执行预期的操作并按降序对数组进行排序。

然而,在 React 中调用它,它实际上并没有对任何东西进行排序,记录的结果根本没有排序,我正在努力弄清楚发生了什么。

下面是我正在使用的反应代码

parsedResults.push({
  position: position,
  results: tempResultsObj
})
console.log(this.sortByKey(this.parsedResults[index].results, "count"))

知道为什么此功能在控制台中有效但在 React 中无效吗?老实说,我不知道。

标签: javascriptarraysreactjsecmascript-6

解决方案


推荐阅读