Javascript 将数字组织到新数组中,同时循环问题

Javascript 将数字组织到新数组中,同时循环问题,javascript,arrays,while-loop,Javascript,Arrays,While Loop,我想按从高到低的顺序组织数字,包括随机数字的副本,并将它们插入OrganizedNumber 我想这是我的while循环,但我不明白为什么 让随机数=[9,2,6,8,52,56,7,43,56,31,48,3,6,8,4,1,3,4,5,17,25]; 设OrganizedNumber=[]; 函数unjumbleTwosourceArray,resultArray{ 对于let i=0,next=false;ia>b?1:aa-b;console.LogorganisedNumber;是的,

我想按从高到低的顺序组织数字,包括随机数字的副本,并将它们插入OrganizedNumber

我想这是我的while循环,但我不明白为什么

让随机数=[9,2,6,8,52,56,7,43,56,31,48,3,6,8,4,1,3,4,5,17,25]; 设OrganizedNumber=[]; 函数unjumbleTwosourceArray,resultArray{ 对于let i=0,next=false;i
function unjumble(sourceArray,resultArray){
  for (let i = 0; i < Math.max(...sourceArray); i++){
    let temp = sourceArray[sourceArray.indexOf(i)];
    while (typeof temp === 'number'){
      resultArray.push(temp);
    }
  }
};
unjumble(randomNumbers,organisedNumbers);
console.log(organisedNumbers);

只需按如下方式返回:


随机数。排序,b=>a>b?1:a 您可以使用排序功能:

let randomNumbers = [9,2,6,8,52,56,7,43,56,31,48,3,6,8,4,1,3,4,5,17,25];
let organisedNumbers = randomNumbers.sort((a, b) => b - a);

console.log(organisedNumbers)

嘿,你为什么要手动操作?有一些库或本机方法可以做到这一点。看看排序方法吧,我认为for循环被误用了。next==true对我来说似乎很奇怪你在哪里更改i?const OrganizedNumber=[9,2,6,8,52,56,7,43,56,31,48,3,6,8,4,1,3,4,5,17,25].slice0.sorta,b=>a-b;console.LogorganisedNumber;是的,你永远不会在while循环中得到一个新的temp,也永远不会停止1。巨大的复制品。2.你改变了原始基因。巨大的欺骗和2。你改变了原作。现场分拣作业