相关疑难解决方法(0)

如何正确排序整数数组

试图从我知道的数组中获得最高和最低值只包含整数似乎比我想象的要难.

var numArray = [140000, 104, 99];
numArray = numArray.sort();
alert(numArray)
Run Code Online (Sandbox Code Playgroud)

我希望这能表明99, 104, 140000.相反它显示104, 140000, 99.所以似乎排序是将值作为字符串处理.

有没有办法让sort函数实际对整数值进行排序?

javascript arrays sorting numbers

772
推荐指数
17
解决办法
45万
查看次数


为什么JavaScript中的".sort()"将非常小的数字排列为难以置信的大数字?

如果我要运行"[6,3,8,7,5,2,1,9,4,0] .sort()"我得到"[0,1,2,3,4,5,6, 7,8,9]"作为你期望的输出.它将数字从最小到最大排序.但如果我要运行"[2,3,1,4e-20] .sort()",我会得到"[1,2,3,4e-20]"作为输出.为什么".sort()"函数将"4e-20"视为大于"3"?即使您运行"3> 4e-20",您也会得到"true"作为输出,表明JavaScript确实意识到"4e-20"是一个非常小的数字.但是sort函数将它视为一个非常大的数字.为什么是这样?是否有某些方法可以改变它,或者我只需要编写自己的函数?

javascript sorting numbers

1
推荐指数
1
解决办法
156
查看次数

如何返回数组的最低索引?

例如,getIndexToIns([1,2,3,4], 1.5)应该返回,1因为它大于1(index 0),但小于2(index 1)。

同样,getIndexToIns([20,3,5], 19)应该返回2因为一旦阵列已排序它看起来像[3,5,20]19小于20(指数2)和大于5(指数1)。

这是我的代码

function getIndexToIns(arr, num) {
  // Find my place in this sorted array.
  arr = arr.sort();
  num = Math.floor(num);
  for(let i=0;i<arr.length;i++){
  }
  return num;
}

getIndexToIns([690, 60], 59);
Run Code Online (Sandbox Code Playgroud)

javascript

1
推荐指数
1
解决办法
186
查看次数

JavaScript 中的 sort() 是如何工作的?

我在 JavaScript 中使用 sort() 已经有一段时间了,但今天我遇到了一些令人困惑的事情。

示例 1
这是我的 chrome 控制台的快照,我正在其中尝试对数组进行排序。

在此输入图像描述 步骤 1. aa是一个带有一些整数值的数组。
步骤 2. aa.sort()的结果出乎意料,因为黄色突出显示清楚地表明该数组未排序。
步骤 3.使用排序中的比较函数 ** 对数组进行排序。这非常有效。


示例 2
这是另一个示例 -
在此输入图像描述
只需使用 **sort() 即可按默认升序对数组进行排序,而
示例 1中并未发生同样的情况。

我想确切地知道sort()方法内部的内容。

javascript arrays sorting

0
推荐指数
1
解决办法
991
查看次数

标签 统计

javascript ×5

sorting ×4

arrays ×2

numbers ×2

integer ×1