在 TypeScript 中排序数组
TypeScript 允许对数组进行不同的操作,排序是其中一种操作。本教程将讨论 typescript 中数组的排序。
在 TypeScript 中使用 sort()
方法对数组进行排序
排序是使用 sort()
方法完成的。此方法对数组中存在的元素进行排序,并将排序后的字符串元素作为输出返回给用户。
sort()
方法默认按升序返回结果。数组类型定义为 string[]
。
例子:
const myArray: string[] = ['A', 'B', 'D', 'X', 'C', 'F'];
myArray.sort();
console.log(`My sorted array is = ${myArray}`);
输出:
My sorted array is = A,B,C,D,F,X
sort()
方法返回字符串数组,数组元素按字母顺序给出作为输出。现在让我们再举一个字符串数组的例子。
例子:
const myFruits: string[] = ['Apple', 'Peach', 'Strawberry', 'Banana', 'Mango'];
myFruits.sort();
console.log(`My sorted fruits is = ${myFruits}`);
输出:
My sorted fruits is = Apple,Banana,Mango,Peach,Strawberry
请注意,所有水果均按字母顺序排序。
在 TypeScript 中对数字数组进行排序
在 TypeScript 中对数字数组进行排序并不像上面看起来那么简单,因为 sort()
方法返回字符串数组。执行逻辑运算以按升序和降序对数值数组进行排序。
例子:
const numArray: number[] = [6,5,8,2,1];
numArray.sort();
console.log(`The sorted numebrs are = ${numArray}`);
输出:
The sorted numebrs are = 1,2,5,6,8
上面的例子可以正常工作,但是如果我们添加一个最后一位为 0 的两位或三位数字会发生什么。让我们举个例子。
例子:
const numArray: number[] = [60,5,8,2,1];
numArray.sort();
console.log(`The sorted numebrs are = ${numArray}`);
输出:
The sorted numebrs are = 1,2,5,60,8
上面的代码片段表明,即使 60
大于 8
,它仍然排在第一位,因为 sort()
方法返回一个字符串数组。在字符串比较中,60
在 8
之前。
为了解决这个问题,我们必须在 sort()
方法中使用一个比较函数,这个函数将决定我们是要按升序还是降序排列数组。
例子:
const numArray: number[] = [60,5,8,2,1];
numArray.sort(function(x,y) {
return x-y
});
console.log(`The sorted numebrs are = ${numArray}`);
输出:
The sorted numebrs are = 1,2,5,8,60
结果以升序显示。要按降序显示结果,请按照以下示例进行操作。
例子:
const numArray: number[] = [60,5,8,2,1];
numArray.sort(function(x,y) {
return y-x
});
console.log(`The sorted numebrs are = ${numArray}`);
输出:
The sorted numebrs are = 60,8,5,2,1
现在结果以降序显示。function(x,y)
根据我们是否希望数字按升序或降序排列的逻辑进行操作。
在 TypeScript 中对对象数组进行排序
TypeScript 允许我们对数组中的对象进行排序。
例子:
var numArray: { num: number; }[] = [{ num: 7}, { num: 9 }, {num: 3}, {num: 6}, {num: 1}];
numArray.sort(function(x,y) {
if (x.num > y.num) {
return 1;
}
if (x.num < y.num) {
return -1;
}
return 0;
});
console.log('The sorted array of objects is as follow:');
console.log(numArray);
输出:
The sorted array of objects is as follow:
[{
"num": 1
}, {
"num": 3
}, {
"num": 6
}, {
"num": 7
}, {
"num": 9
}]
代码示例显示了已排序的对象数组。在条件中,return 1
表明第一个在第二个之后。
return -1
表示第一次在第二次之前,return 0
表示它们是相等的。结果以升序显示。
要按降序获得结果,请将条件中的 -1
替换为 1
,反之亦然。
相关文章
在 TypeScript 中使用 try..catch..finally 处理异常
发布时间:2023/03/19 浏览次数:181 分类:TypeScript
-
本文详细介绍了如何在 TypeScript 中使用 try..catch..finally 进行异常处理,并附有示例。
在 TypeScript 中使用 declare 关键字
发布时间:2023/03/19 浏览次数:97 分类:TypeScript
-
本教程指南通过特定的实现和编码示例深入了解了 TypeScript 中 declare 关键字的用途。
在 TypeScript 中 get 和 set
发布时间:2023/03/19 浏览次数:172 分类:TypeScript
-
本篇文章演示了类的 get 和 set 属性以及如何在 TypeScript 中实现它。
在 TypeScript 中格式化日期和时间
发布时间:2023/03/19 浏览次数:161 分类:TypeScript
-
本教程介绍内置对象 Date() 并讨论在 Typescript 中获取、设置和格式化日期和时间的各种方法。
在 TypeScript 中返回一个 Promise
发布时间:2023/03/19 浏览次数:182 分类:TypeScript
-
本教程讨论如何在 TypeScript 中返回正确的 Promise。这将提供 TypeScript 中 Returns Promise 的完整编码示例,并完整演示每个步骤。
在 TypeScript 中定义函数回调的类型
发布时间:2023/03/19 浏览次数:221 分类:TypeScript
-
本教程说明了在 TypeScript 中为函数回调定义类型的解决方案。为了程序员的方便和方便,实施了不同的编码实践指南。
在 TypeScript 中把 JSON 对象转换为一个类
发布时间:2023/03/19 浏览次数:110 分类:TypeScript
-
本教程演示了如何将 JSON 对象转换为 TypeScript 中的类。
使用 NPM 将 TypeScript 更新到最新版本
发布时间:2023/03/19 浏览次数:130 分类:TypeScript
-
本教程说明了如何使用 npm 更新到最新版本的 TypeScript。这将为如何使用 npm 将 TypeScript 更新到最新版本提供完整的实际示例。
使用 jQuery 和 TypeScript
发布时间:2023/03/19 浏览次数:151 分类:TypeScript
-
本教程提供了使用 jQuery 和 TypeScript 的基本理解和概念。