本文介绍: TypeScript 自定义数组排序前言代码基本原理基本类型排序复杂类型排序输出前言对列表进行排序(根据自定义规则)。代码基本原理.sort使用属性相减(a–b)获取一个基本类型(-1,0,1),如果小于0则将元素放到前面,如果大于0则放到后面,如果等于0则随缘(不同浏览器会有不同解析方式)。.sort()采用返回数字的函数,而不是布尔值。如果第一项较小,则需要返回负值; 如果它更大,则为正;如果相等,则为零。—— 出处:https://cloud.tencent.com/develope
前言
代码
基本原理
.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
}]
原文地址:https://blog.csdn.net/a71468293a/article/details/123917046
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_11923.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。