function choujiang(prizes) { var prizeList = [] //按照权重分解后的奖品数组 prizes.map(function(item){ prizeList.push({ ...item }) for(var i=0; i< item.gailv; i++) { prizeList.push({ ...item }) } }); prizeList = reset(prizeList); // 范围随机数 function randomFrom(lowerValue, upperValue) { return Math.floor(Math.random() * (upperValue - lowerValue + 1) + lowerValue); }; // 随机打乱数组 function reset(arr) { var eachArr = arr.concat([]) var lastArr = [] function deepEach(deepArr) { if (deepArr.length) { var randomIndex = randomFrom(0, eachArr.length - 1) lastArr.push(eachArr[randomIndex]) eachArr.splice(randomIndex, 1) deepEach(eachArr) } } deepEach(eachArr) return lastArr } this.getResult = function() { var random = randomFrom(0, prizeList.length - 1); return prizeList[random] } } export default choujiang;
session(release): write data/sessions/0/a/0a5ecf6cefd05db2: no space left on device
/root/go/pkg/mod/github.com/go-macaron/session@v0.0.0-20190805070824-1a3cdc6f5659/session.go:199 (0x8bc0f8) /root/go/pkg/mod/gopkg.in/macaron.v1@v1.5.0/context.go:81 (0x83623b) /root/go/pkg/mod/github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:157 (0x80b5f4) /root/go/pkg/mod/github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:135 (0x80b51c) /root/go/pkg/mod/gopkg.in/macaron.v1@v1.5.0/context.go:125 (0x8363b2) /root/go/pkg/mod/gopkg.in/macaron.v1@v1.5.0/context.go:115 (0x8473a6) /root/go/pkg/mod/gopkg.in/macaron.v1@v1.5.0/recovery.go:161 (0x84739d) /root/go/pkg/mod/gopkg.in/macaron.v1@v1.5.0/logger.go:40 (0x839a24) /root/go/pkg/mod/github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:157 (0x80b5f4) /root/go/pkg/mod/github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:135 (0x80b51c) /root/go/pkg/mod/gopkg.in/macaron.v1@v1.5.0/context.go:125 (0x8363b2) /root/go/pkg/mod/gopkg.in/macaron.v1@v1.5.0/router.go:187 (0x8412dd) /root/go/pkg/mod/gopkg.in/macaron.v1@v1.5.0/router.go:304 (0x8423ec) /root/go/pkg/mod/gopkg.in/macaron.v1@v1.5.0/macaron.go:218 (0x83adde) /usr/local/btgo/src/net/http/server.go:2936 (0x7b23b5) serverHandler.ServeHTTP: handler.ServeHTTP(rw, req) /usr/local/btgo/src/net/http/server.go:1995 (0x7add91) (*conn).serve: serverHandler{c.server}.ServeHTTP(w, w.req) /usr/local/btgo/src/runtime/asm_amd64.s:1598 (0x47e160) goexit: BYTE $0x90 // NOP