我就一直不明白,为啥 return a-b 是升序, return b-a 就是降序? 看了好几个讲原理的太复杂了也没看明白,但是!我掌握了一种特殊的技巧去记忆! a-b别读a减b,读a至b,在字母表中,a至b是递增的,所以 return a-b 是升序。反之,return b-a 就是降序。 如果想探究背后的原理,可以看一下 Array.prototype.sort() 的API 如果看了上面这个还不懂,再去看一下sort函数在v8引擎内部实现的方式,搜一下 InnerArraySort 函数