赞
踩
对列表进行排序(根据自定义规则)。
.sort使用属性相减(a-b)获取一个基本类型(-1,0,1),如果小于0则将元素放到前面,如果大于0则放到后面,如果等于0则随缘(不同浏览器会有不同解析方式)。
.sort()采用返回数字的函数,而不是布尔值。
如果第一项较小,则需要返回负值; 如果它更大,则为正;如果相等,则为零。
—— 出处:https://cloud.tencent.com/developer/ask/54556
//待排序数组
var numericArray:Array<number> = [2,3,4,4,1,5,8,11];
//排序完成的数组
var sorrtedArray:Array<number> = numericArray.sort((n1,n2)=> {
return n1 - n2
}
//打印
console.log(sorrtedArray);
输出
[1, 2, 3, 4, 4, 5, 8, 11]
class Hum{ public name:string=""; public age:number=0; constructor(name:string,age:number){ this.name=name; this.age=age; } } let nike=new Hum("Nike",14); let joine=new Hum("Joine",18); let frank=new Hum("frank",12); let baobo=new Hum("Baobo",13); let wisk=new Hum("Wisk",16); var humArray:Hum[] = []; humArray.push(nike); humArray.push(joine); humArray.push(frank); humArray.push(baobo); humArray.push(wisk); //排序完成的数组 var sorrtedArray:Array<Hum> = humArray.sort((n1,n2)=> { return n1.age - n2.age } ); //打印 console.log(sorrtedArray);
输出
[Hum: { "name": "frank", "age": 12 }, Hum: { "name": "Baobo", "age": 13 }, Hum: { "name": "Nike", "age": 14 }, Hum: { "name": "Wisk", "age": 16 }, Hum: { "name": "Joine", "age": 18 }]
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。