首页 > 解决方案 > 数组中未定义的元素,其中包含随机数

问题描述

所以我创建了这个脚本来生成一个由 5 个随机数组成的数组,其中的数字必须是唯一的,但我得到了 +2 个未定义的元素。有 5 个数字是唯一的,但数组的长度不再是 5

let arr = [];
while (arr.length <= 5) {
  let x = Math.floor(Math.random() * 11);
  if (arr.includes(x) === false) {
    arr.push(x);
  }
  arr.length += 1;
}
console.log(arr);

提前谢谢各位。

标签: javascript

解决方案


您应该删除该arr.length += 1行。每次推送新元素时,数组长度会自动增加,无需自行修改:这是一种不好的做法。


推荐阅读