我有这个代码,我需要显示数字为随便的顺序

时间:2016-03-28 14:43:08

标签: javascript

我有这个代码,我需要显示数字为随便的顺序。即
 [3,45,20,10,8 ......]。你能帮助我吗?谢谢。

   $(function () {
        var $select = $(".left");
        for (i = 1; i <= 100; i++) {
            $select.append($('<input type="button"></input>').val(i).html(i));
        }
    });

1 个答案:

答案 0 :(得分:0)

要随机显示100个按钮,您需要先生成一个唯一编号列表,然后随机排序。 @Felix King对改组提出了很好的建议,这样的事情会起作用:

function shuffle(array) {
  var currentIndex = array.length, temporaryValue, randomIndex;

  // While there remain elements to shuffle...
  while (0 !== currentIndex) {

    // Pick a remaining element...
    randomIndex = Math.floor(Math.random() * currentIndex);
    currentIndex -= 1;

    // And swap it with the current element.
    temporaryValue = array[currentIndex];
    array[currentIndex] = array[randomIndex];
    array[randomIndex] = temporaryValue;
  }

  return array;
}


var values = [];

$(function () {
    var $select = $(".left");
  for (i = 1; i <= 100; i++) {
    values.push(i);
  }
  shuffle(values);
  for(var i = 0; i < values.length; i++) {
    $select.append($('<input type="button"></input>').val(values[i]).html(values[i]));
  }
});

您可以在此处看到它:https://jsfiddle.net/igor_9000/hxuy531q/

希望有所帮助。