为什么赢了';这个TypeScript排序代码是否根据属性正确地对这个对象数组排序?
我转换了一些JavaScript代码,将数组排序为TypeScript,但无法使其工作。有人知道为什么这段代码不会对数组进行排序吗为什么赢了';这个TypeScript排序代码是否根据属性正确地对这个对象数组排序?,typescript,Typescript,我转换了一些JavaScript代码,将数组排序为TypeScript,但无法使其工作。有人知道为什么这段代码不会对数组进行排序吗 const quotes = getQuotes(); const ascendingText : any = (a: any, b: any) => a.text > b.text; console.log(quotes.sort(ascendingText)); function getQuotes() : any { return [
const quotes = getQuotes();
const ascendingText : any = (a: any, b: any) => a.text > b.text;
console.log(quotes.sort(ascendingText));
function getQuotes() : any {
return [
{
"category": "tech",
"text": "cccccccccccccccccccc",
"rank": 2.4,
"status": "dontPost"
},
{
"category": "tech",
"text": "ddddddddddddddd",
"rank": 4.1,
"status": "posted"
},
{
"category": "tech",
"text": "aaaaaaaaaaaaaa",
"rank": 3.2,
"status": "dontPost"
},
{
"category": "tech",
"text": "bbbbbbbbbbbbbbbbbbbbb",
"rank": 3.1,
"status": "dontPost"
}
]
}
结果是:
[
{
category: 'tech',
text: 'cccccccccccccccccccc',
rank: 2.4,
status: 'dontPost'
},
{
category: 'tech',
text: 'ddddddddddddddd',
rank: 4.1,
status: 'posted'
},
{
category: 'tech',
text: 'aaaaaaaaaaaaaa',
rank: 3.2,
status: 'dontPost'
},
{
category: 'tech',
text: 'bbbbbbbbbbbbbbbbbbbbb',
rank: 3.1,
status: 'dontPost'
}
]
因为比较方法的返回类型应该是数字,而不是布尔值。 如果ab,该值应为正值;如果a==b,该值应为0
请参见,因为比较方法的返回类型应该是数字,而不是布尔值。 如果ab,该值应为正值;如果a==b,该值应为0
请参见谢谢,是的,这很有效:
a.textb.text?1:0
谢谢,是的,这个有效:a.textb.text?1:0