我想基于string
中特定的Typescript
类型值对数组对象进行排序。下面的代码我已经尝试过但不能正常工作
this.deviceapp = data.Devices[0].Products.sort((product)=>product.Status="Non-Compliant")
我需要顶部的“不合规”记录,该怎么办?
答案 0 :(得分:3)
通过执行product.Status="Non-Compliant"
,您只是将{Non-Compliant“值分配给product.status
。
.sort
函数期望将-1、0或-1作为返回值。试试这个:
let products = [
{ Status : "Compliant"},
{ Status : "Non-Compliant"},
{ Status : "Compliant"},
{ Status : "Compliant"},
{ Status : "Non-Compliant"},
{ Status : "Compliant"},
]
products.sort( product => product.Status==="Non-Compliant" ? -1 : 1)
console.log(products)