相关疑难解决方法(0)

Javascript的sort()如何工作?

以下代码如何按数字顺序对此数组进行排序?

var array=[25, 8, 7, 41]

array.sort(function(a,b){
  return a - b
})
Run Code Online (Sandbox Code Playgroud)

我知道如果计算结果是......

小于0:"a"被排序为低于"b"的索引.
零: "a"和"b"被认为是相等的,并且不执行排序.
大于0: "b"被排序为比"a"更低的索引.

在排序过程中多次调用数组排序回调函数?

如果是这样,我想知道每次将哪两个数字传递给函数.我假设它首先取"25"(a)和"8"(b),然后是"7"(a)和"41"(b),所以:

25(a) - 8(b)= 17(大于零,所以将"b"排序为低于"a"的索引):8,25

7(a) - 41(b)= -34(小于零,所以将"a"排序为比"b"更低的索引:7,41

那么这两组数字如何相互排序?

请帮助一个苦苦挣扎的新手!

javascript sorting comparator

77
推荐指数
7
解决办法
3万
查看次数

sort函数如何在JavaScript中工作,以及compare函数

正如已经问过的那样:排序功能如何在JavaScript中运行,以及compare功能?如果我有一个数组,我array.sort(compare)现在在书中写道,如果compare函数返回a-b(数组的两个索引),那么它的工作原理是结果是否大于0,小于0或等于但是,它究竟是如何运作的?我无法解决这个问题.

javascript

58
推荐指数
3
解决办法
6万
查看次数

在JavaScript中排序:不应该返回一个布尔值足够的比较函数?

我总是这样成功地对我的数组进行排序(当我不想要标准的词典排序时):

var arr = […] // some numbers or so
arr.sort(function(a, b) {
    return a > b;
});
Run Code Online (Sandbox Code Playgroud)

现在,有人告诉我这是错的,我需要return a-b改为.这是真的,如果是的话为什么?我测试了我的比较功能,它有效!另外,为什么我的解决方案出错时会如此常见

javascript sorting comparison

41
推荐指数
2
解决办法
7724
查看次数

标签 统计

javascript ×3

sorting ×2

comparator ×1

comparison ×1