我正在学习JavaScript,目前正在学习数组的.sort()函数。我知道它可以不带参数或带一个介于a-b和b-a之间的参数。
然而,我不明白的是return 0
、return -1
和return 1
的用法。以下是一个例子(来源:http://www.codewars.com/kata/572df796914b5ba27c000c90):
var arr=[1,2,3,4,5,6,100,999]
arr.sort((a,b)=>{
if (a%2==b%2) return a-b;
if (a%2>b%2) return -1;
return 1;
})
console.log(arr)
//output: [ 1, 3, 5, 999, 2, 4, 6, 100 ]
我理解它的作用,即将奇数和偶数分开,并按升序排序。但是
return -1
和return 1
的含义是什么?有人能逐步解释这个函数吗?我尝试更改一些值并玩一下代码,例如将
return -1
更改为return 0
,以尝试理解它如何工作,但我仍然不理解。哪里可以找到详细了解
return
元素的资源?