Задать вопрос
IgorBee
@IgorBee
JS,VBS,3D.Web с 07.2015

Как рандомно расставить ключи массива?

Допустим есть массив ,который содержит элементы хтмл.

Как в массиве рандомно их переставить.

www.itsmycodeblog.com/shuffling-a-javascript-array

есть такое но оч большая функция.

может у джс есть метод такой?

хотелось бы в 1 макс 2 строки,а лучше метод)))

Желательно натив джс,но если на джиквери есть метод такой то ок.
  • Вопрос задан
  • 357 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 3
В предоставленной ссылки функция на 3 строки :)
Почему не понравилось?
[12,4,16,3].sort(function() {
  return 0.5 - Math.random();
}); // [12, 16, 3, 4]

А вот все о сортировке.
Ответ написан
@GreatRash
function shuffle(array) {	
	// original by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)

	for (var j, x, i = array.length; i; j = parseInt(Math.random() * i), x = array[--i], array[i] = array[j], array[j] = x);
	return true;
}

Тасование Фишера-Йетса
Ответ написан
miraage
@miraage
Старый прогер
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Fqyeh29
@Fqyeh29
↓ ИМХО ↓
var arr = [1, 2, 3, 4, 5];

function compareRandom(a, b) {
  return Math.random() - 0.5;
}

arr.sort(compareRandom);

alert( arr ); // элементы в случайном порядке, например [3,5,1,2,4]
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы