javascript - 创建给定数组中唯一的随机整数

标签 javascript jquery

<div id='passarr'>1572 4528 3564 8921 4521</div>

我需要创建一个新的随机整数(4 位数字),对于上述内容来说是唯一的。

js

var content = $('#passarr').text();
var passarr = content.split(' ');
var pass = Math.floor(Math.random() * 9000) + 1000;
var i = 0;
while (i == 0) {
    if (jQuery.inArray(pass, passarr) > -1) {
        var pass = Math.floor(Math.random() * 9000) + 1000;
        i = 1;
    }
}

似乎可行,但不确定这是正确且最短的方法。
有什么建议吗?

最佳答案

你的代码就是要走的路。但是,您可以消除一些较小的错误(< 0.00001% 中不必要的 i 和非工作代码):

var content = $('#passarr').text();
var passarr = content.split(' ');
do {
  var pass = Math.floor(Math.random() * 9000) + 1000;
} while (jQuery.inArray(pass, passarr) > -1);

console.log(pass);

关于javascript - 创建给定数组中唯一的随机整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45379287/

相关文章:

javascript - VEMap : pan and zoom work separately; together, 缩放不再起作用

javascript - 从 JavaScript 数组中删除索引和对象值

javascript - 内部 div 的 Jquery CSS 已覆盖不透明度的颜色

javascript - 字符串用javascript数组中的逗号替换 "<br>↵"

javascript - 用于网络应用程序开发的 sproutcore 或 cappucino?

javascript - npm install 找不到新版本

javascript - 完整日历 - 读取键盘箭头键并获得与单击日期单元格相同的行为

jquery。 var = var+1 可以接受吗?

javascript - 控制取消选择事件上的选择更改功能

javascript - jQuery 仅选择未嵌套在类似元素中的元素