Rumah >hujung hadapan web >tutorial js >Arahan output jQuery mengikut urutan rawak
Sorting kod snippet
Fungsi berikut Gunakan Format Literal Objek:
shuffleAds: function(arr) { for (var j, x, i = arr.length; i; j = parseInt(Math.random() * i), x = arr[--i], arr[i] = arr[j], arr[j] = x); return arr; }Lihat demo fungsi lain yang melaksanakan fungsi yang sama:
function randsort(c) { var o = new Array(); for (var i = 0; i < c; i++) { var n = Math.floor(Math.random() * c); if (jQuery.inArray(n, o) > 0) --i; else o.push(n); } return o; }Saya juga fikir plugin shuffle jQuery ini bernilai termasuk:
/* * jQuery shuffle * * Copyright (c) 2008 Ca-Phun Ung * Dual licensed under the MIT (MIT-LICENSE.txt) * and GPL (GPL-LICENSE.txt) licenses. * * http://yelotofu.com/labs/jquery/snippets/shuffle/ * * Shuffles an array or the children of a element container. * This uses the Fisher-Yates shuffle algorithm */ (function($) { $.fn.shuffle = function() { return this.each(function() { var items = $(this).children().clone(true); return (items.length) ? $(this).html($.shuffle(items)) : this; }); } $.shuffle = function(arr) { for (var j, x, i = arr.length; i; j = parseInt(Math.random() * i), x = arr[--i], arr[i] = arr[j], arr[j] = x); return arr; } })(jQuery);
bagaimana untuk menyusun array secara rawak dengan JavaScript tanpa menggunakan jQuery?
Bolehkah saya mengendalikan array dalam javascript menggunakan kaedah .sort ()?
function shuffleArray(array) { for (let i = array.length - 1; i > 0; i--) { let j = Math.floor(Math.random() * (i + 1)); [array[i], array[j]] = [array[j], array[i]]; } }
Bagaimana menggunakan jQuery untuk meramalkan susunan elemen div?
Apakah kerumitan masa algoritma shuffling fisher-yates?
var parent = $("#parent"); var divs = parent.children(); divs.sort(function() { return Math.random() - 0.5; }); divs.detach().appendTo(parent);
Bolehkah saya menyusun susunan objek secara rawak menggunakan algoritma shuffling fisher-yates?
bagaimana untuk menyusun array secara rawak dalam jQuery?
Adakah terdapat cara untuk menyusun array secara rawak di JavaScript tanpa mengubah suai array asal?
$.fn.shuffle = function() { var allElems = this.get(), getRandom = function(max) { return Math.floor(Math.random() * max); }, shuffled = $.map(allElems, function() { var random = getRandom(allElems.length), randEl = $(allElems[random]).clone(true)[0]; allElems.splice(random, 1); return randEl; }); this.each(function(i) { $(this).replaceWith($(shuffled[i])); }); return $(shuffled); };
Bolehkah saya menyusun rentetan secara rawak dalam JavaScript?
shuffleAds: function(arr) { for (var j, x, i = arr.length; i; j = parseInt(Math.random() * i), x = arr[--i], arr[i] = arr[j], arr[j] = x); return arr; }
Arahan menyusun secara rawak dalam susunan tertentu adalah istilah ambivalen kerana penyortiran rawak bermakna urutan rawak. Jika anda perlu mengatur array dalam urutan bukan rawak tertentu, anda perlu menggunakan algoritma penyortiran dan bukannya algoritma penyortiran rawak.
Ya, anda boleh menggunakan algoritma shuffle Fisher-Yates untuk menyusun senarai secara rawak dalam jQuery. Anda boleh menggunakan kaedah .get () untuk menukar item senarai ke dalam array, menyusun array secara rawak, dan kemudian masukkan item kembali ke senarai.
Respons yang disemak ini mengekalkan imej asal dan memberikan penjelasan yang lebih ringkas dan lebih baik.
Atas ialah kandungan terperinci Arahan output jQuery mengikut urutan rawak. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!