TypeScript Array排序

1.对array进行排序

var numericArray:Array<number> = [2,3,4,1,5,8,11];

var sorrtedArray:Array<number> = numericArray.sort((n1,n2)=> n1 > n2);

您将在您的排序方法中收到错误,指出参数与调用目标的任何签名不匹配,因为您的结果是数字而不是布尔值。我想我错过了一些事情,因为我很确定n1> n2是一个布尔语句。

最佳答案
错误是完全正确的。

因为它试图告诉你,.sort()接收一个返回数字而不是布尔值的函数。

如果第一个项目较小,则需要返回否定值;如果它较大,则为正数,如果相等则为零。

具体代码:

private m_WindowList: Array<UIBaseWindow> = new Array<UIBaseWindow>();
private ListSort(_list: Array<UIBaseWindow>): any {
        _list.sort((n1, n2) => {
            var flag = 0;
            if (n1 > n2) {
                flag = 1;
            }
            else if (n1 < n2) {
                flag = -1;
            }
            return flag;
        });
    }

其它功能参考这个博客:https://blog.csdn.net/honey199396/article/details/80750408

https://blog.csdn.net/menghuannvxia/article/details/79640028 lamda查询

posted @ 2019-11-14 14:02  大刀乱飞  阅读(1777)  评论(0)    收藏  举报