Показать сообщение отдельно
  #29 (permalink)  
Старый 27.12.2015, 12:07
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126


чуть сократил ещё
Array.prototype.randomShuffle = function(c, b) {
    c = c || 0;
    b = ++b || this.length;
    var a = b - c;
    b = a - this.length;
    this.length = a--;
    for (; 0 <= a && !(a < b); a--) {
        var d = Math.floor(Math.random() * a),
            e = void 0 === this[d] ? d + c : this[d];
        this[d] = void 0 === this[a] ? a + c : this[a];
        this[a] = e
    }
    this.reverse();
    this.length -= b;
    return this
};
alert( Array(5).randomShuffle(-1,1))//заполнение пустого массива идёт на длину указанного диапазона от min до max
alert( Array(5).randomShuffle(-10,10))
Ответить с цитированием