HarmonyOS 鸿蒙Next 关于数组的常用方法.sort

发布于 1周前 作者 wuwangju 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 关于数组的常用方法.sort 最近学习到 .sort 的方法,发现编译器输出的结果和官方文档的说明有较大出入,求解答!

问题描述:官方文档中描述回调函数的第一个参数 a 是前一项元素,b 是后一项元素,按照这个逻辑,我输出 a,应该会有第一个数据也就是 5,但是实际没有!


更多关于HarmonyOS 鸿蒙Next 关于数组的常用方法.sort的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

我的评价是,mdn都没这么描述,官网是从哪里抄来的

这个方法是js自带的方法,但你管他是不是,你只要知道,在这个回调里,如果a<b你应该返回一个负数,a=b应该返回0,a>b应该返回一个正数就行了。

更多关于HarmonyOS 鸿蒙Next 关于数组的常用方法.sort的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next中,数组的.sort()方法用于对数组元素进行排序。默认情况下,.sort()方法会将数组元素转换为字符串,然后按照Unicode码点顺序进行排序。例如:

let arr = [10, 5, 20, 1];
arr.sort();
console.log(arr); // 输出: [1, 10, 20, 5]

如果需要按照数值大小排序,可以传入一个比较函数:

let arr = [10, 5, 20, 1];
arr.sort((a, b) => a - b);
console.log(arr); // 输出: [1, 5, 10, 20]

比较函数接收两个参数ab,返回值为负数时a排在b前面,返回值为正数时b排在a前面,返回值为0时顺序不变。

.sort()方法会直接修改原数组,并返回排序后的数组。

在HarmonyOS(鸿蒙Next)中,数组的.sort()方法用于对数组元素进行排序。默认情况下,.sort()会将元素转换为字符串,并按Unicode码点顺序排序。若需自定义排序规则,可传入一个比较函数,该函数接收两个参数(a, b),并返回负数、零或正数,分别表示a应排在b前、a与b相等、a应排在b后。例如,array.sort((a, b) => a - b)可实现数字的升序排序。

回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!