使用 JavaScript 对具有偶数十进制值的二进制字符串进行排序
问题
我们需要编写一个JavaScript函数,该函数接受一个字符串,该字符串包含长度为3的二进制字符串,所有字符串都用空格分隔。
我们的函数应该按升序对数字进行排序,但只对偶数进行排序,并将所有奇数留在原处。
示例
以下是代码-
const str = '101 111 100 001 010';
const sortEvenIncreasing = (str = '') => {
const sorter = (a, b) => {
const findInteger = bi => parseInt(bi, 2);
if(findInteger(a) % 2 === 1 || findInteger(b) % 2 === 1){
return 0;
};
return findInteger(a) - findInteger(b);
};
const res = str
.split(' ')
.sort(sorter)
.join(' ');
return res;
};
console.log(sortEvenIncreasing(str));输出结果101 111 100 001 010