这本书“学习PHP,MySql和Javascript”中的这部分是错的吗?
numbers = [7, 23, 6, 74];
numbers.sort(function(a,b){return a - b});
产出6,7,23,74
书上说:
如果sort()中的匿名函数返回大于零的值,则排序假定a位于b之前。 如果sort()中的匿名函数返回小于零的值,则排序假定b先于a。 排序在数组中的所有值中运行此函数以确定它们的顺序。
这样做不对吗?因为..。
a
这里是7
b
这里是23
7 - 23 = -16
// a数小于零。书上说它应该放在a之前。
所以最后的输出应该是74, 23, 7, 6
发布于 2012-07-06 18:29:47
发布于 2012-07-06 18:30:19
输出是正确的,但解释不是正确的。如果该方法返回< 0,则a位于b之前。
https://stackoverflow.com/questions/11367697
复制相似问题