JavaScript中数字数组的一种特殊类型
我们需要编写一个JavaScript函数,该函数接受一个数字数组并对该数组进行排序,以便首先所有偶数都以升序出现,然后所有奇数都以升序出现。
例如:如果输入数组是-
const arr = [2, 5, 2, 6, 7, 1, 8, 9];
输出结果
那么输出应该是-
const output = [2, 2, 6, 8, 1, 5, 7, 9];
因此,让我们为该函数编写代码-
示例
为此的代码将是-
const arr = [2, 5, 2, 6, 7, 1, 8, 9]; const isEven = num => num % 2 === 0; const sorter = ((a, b) => { if(isEven(a) && !isEven(b)){ return -1; }; if(!isEven(a) && isEven(b)){ return 1; }; return a - b; }); const oddEvenSort = arr => { arr.sort(sorter); }; oddEvenSort(arr); console.log(arr);
输出结果
控制台中的输出将为-
[ 2, 2, 6, 8, 1, 5, 7, 9 ]