Вчера, когда я проводил ежегодное собрание, я увидел шутку о розыгрыше лотереи Vipshop, но призы были выиграны департаментом, который написал процедуры лотереи, и технический директор рассмотрел код на месте.
Я кратко подумал о реализации лотерейной программы и потратил более десяти минут, написав ее. Основными знаниями являются добавление и удаление массива, а также методы индекса и фильтра, добавленные в массив ES5.
Чтобы сохранить победные рекорды после обновления страницы, LocalStorage использовался для сохранения победных рекордов.
В начале я использовал случайные числа, чтобы напрямую получить число. Я обнаружил, что было очень трудно устранить победителей. Если вы неоднократно звонили рекурсивно, если есть слишком много победителей, и вероятность получения победителей в конце концов, я использовал два массива для его реализации. Один записал выигрышный номер, а другой записал отделанный номер. Победители были только что исключены из другого массива, и не было никакого рекурсивного звонка.
Конкретная реализация заключается в следующем:
var start = 1, end = 20, luckylist = [], futurelist = []; // Luckylist указывает человека, который выиграл приз, Futurelist указывает человека, который еще не выиграл лотерею, начало, End указывает на начало и конец номера лотереи // инициализируя массив всех чисел персонала сначала (var i = i <= end; i le+le+le+lethuril; Страница обновлена, RESTORE if (localStorage.getItem ("lucky")) {LuckyList = localStorage.getItem ("Lucky"). Split (","); FutureList = futureList.filter (function (item) {return luckylist.indexof (item) ==-1;} консоль. номер функции raffle () {var num = math.random ()*futurelist.length; num = math.floor (num); var idx = futurelist.indexof (num); var result = futureList.splice (idx, 1) [0] .toString (); Luckylist.push (result); LocalStorage.Setitem ("Lucky", Luckylist); console.log ("Lucky", Result);} // Очистить локальный строорж, если вы хотите сбросить программу, чтобы выполнить функцию Clear () () ")")Приведенный выше простой пример того, как JavaScript реализует лотерейную программу - это все контент, которым я поделился с вами. Я надеюсь, что вы можете дать вам ссылку, и я надеюсь, что вы сможете поддержать Wulin.com больше.