Angular:使用本机JS Sort()获取兼容签名时出错

Angular:使用本机JS Sort()获取兼容签名时出错,angular,typescript,Angular,Typescript,根据obj,如果x和y共享相同的属性(例如文章中的名称),则x可以分配给y 我试图在Angular中对一个数组进行排序,这个数组有几个对象,其中有一个特殊的道具,它的类型是number 例如: const arr = [ 0: {num: 5}, 1: {num: 1}, 2: {num: 3}, 3: {num: 10} ] 当尝试对上面的对象进行排序时,我得到了下面的错误 无法调用其类型缺少调用签名的表达式。键入“((compareFn?:(a:any,b:any)=>number=>an

根据obj,如果x和y共享相同的属性(例如文章中的名称),则x可以分配给y

我试图在Angular中对一个数组进行排序,这个数组有几个对象,其中有一个特殊的道具,它的类型是number

例如:

const arr = [
0: {num: 5},
1: {num: 1},
2: {num: 3},
3: {num: 10}
]
当尝试对上面的对象进行排序时,我得到了下面的错误

无法调用其类型缺少调用签名的表达式。键入“((compareFn?:(a:any,b:any)=>number=>any[])

比较对象内的相同值时,我缺少什么

编辑:

 this.returnData = data((a,b) => {
          return a.num - b.num;
        });

此函数在my ngOnIt中定义,returnData是类中ngOnIt()外部定义的数组类型,data是从my services中传入的数组

请将代码粘贴到您尝试对
arr
进行排序的位置,查看编辑。感谢ya@Generaldeep,我想你的数组是const arr=[{num:5},{num:1},{num:3},{num:10}]我不知道你为什么要把0:…,1:…每个对象都放在一个数组索引上,我写的是正确的。