检查数组的元素是否可以在JavaScript中重新排列以形成数字序列

我们需要编写一个JavaScript函数,该函数接受一个数字数组,并检查该数组的元素是否可以重新排列以形成数字序列。

例如:如果数组是-

const arr = [3, 1, 4, 2, 5];

然后输出应为true。

因此,让我们为该函数编写代码-

示例

为此的代码将是-

const arr = [3, 1, 4, 2, 5];
const canBeConsecutive = (arr = []) => {
   if(!arr.length){
      return false;
   };
   const copy = arr.slice();
   copy.sort((a, b) => a - b);
   for(let i = copy[0], j = 0; j < copy.length; i++, j++){
      if(copy[j] === i){
         continue;
      };
      return false;
   };
   return true;
};
console.log(canBeConsecutive(arr));

输出结果

控制台中的输出将为-

true