为什么我的排序功能仅在Firefox中有效?

时间:2019-01-14 09:02:48

标签: javascript reactjs google-chrome

我的排序功能有问题。即,我的代码仅在Firefox中可用,但是几个月前,它已在每种浏览器上运行。您对此有什么解决方案吗?每个排序功能都相似,因此我只粘贴其中之一:

这是我的小提琴:https://jsfiddle.net/zfa6qkt5/13/

    handleSortNoteAsc = () => {
    let sortedAsc = this.state.data.sort(function(a, b) {return a.note > b.note});
    this.setState({
        data: sortedAsc
    })
};

handleSortNoteDesc = () => {
    let sortedDesc = this.state.data.sort(function(a, b) {return a.note < b.note});
    this.setState({
        data: sortedDesc
    })
};

1 个答案:

答案 0 :(得分:0)

  

Webkit要求比较函数返回一个整数而不是   而不是布尔值,否则它不会执行任何操作而没有错误。

Array.sort browser differences

按如下所示对数组进行排序:

[3,1,4,2,5].sort(function(a,b) {
    return a - b;
});

不是这样的:

[3,1,4,2,5].sort(function(a,b) {
    return a > b;
});