How to Generate a random number of fixed length using JavaScript?

前端 未结 22 2564
攒了一身酷
攒了一身酷 2021-01-30 10:23

I\'m trying to generate a random number that must have a fixed length of exactly 6 digits.

I don\'t know if JavaScript has given below would ever create a number less th

22条回答
  •  南方客
    南方客 (楼主)
    2021-01-30 10:29

    This code provides nearly full randomness:

    function generator() {
        const ran = () => [1, 2, 3, 4, 5, 6, 7, 8, 9, 0].sort((x, z) => {
            ren = Math.random();
            if (ren == 0.5) return 0;
            return ren > 0.5 ? 1 : -1
        })
        return Array(6).fill(null).map(x => ran()[(Math.random() * 9).toFixed()]).join('')
    }
    
    console.log(generator())

    This code provides complete randomness:

    function generator() {
    
        const ran1 = () => [1, 2, 3, 4, 5, 6, 7, 8, 9, 0].sort((x, z) => {
            ren = Math.random();
            if (ren == 0.5) return 0;
            return ren > 0.5 ? 1 : -1
        })
        const ran2 = () => ran1().sort((x, z) => {
            ren = Math.random();
            if (ren == 0.5) return 0;
            return ren > 0.5 ? 1 : -1
        })
    
        return Array(6).fill(null).map(x => ran2()[(Math.random() * 9).toFixed()]).join('')
    }
    
    console.log(generator())

提交回复
热议问题