利用前端JS进行数字和字母的多位随机展示

前端展示随机字母和数字主要是利用随机数的概念,将所需要随机的字母设置为从10开始的key:value对,例如将所有的大写字母和0~9的数字进行随机,组成***-**的结构,例如E33-4R

1.首先在create中声明随机长度和相应的输出方式

created() {
    let total = 6;//最终得出的结果是6位,如RY4-MJ
    console.log("生成的长度:", total);
    console.log(this.generateRandomNumbers(total)); //输出随机6位提货码(五位随机数+一位符号)
  },

2.声明键值对:所有的大写字母和符号”-“(key从10开始,到36结束)

numberConvertEnglishLettersMap() {
      return [
        { key: 10, value: "A" },
        { key: 11, value: "B" },
        { key: 12, value: "C" },
        { key: 13, value: "D" },
        { key: 14, value: "E" },
        { key: 15, value: "F" },
        { key: 16, value: "G" },
        { key: 17, value: "H" },
        { key: 18, value: "I" },
        { key: 19, value: "J" },
        { key: 20, value: "K" },
        { key: 21, value: "L" },
        { key: 22, value: "M" },
        { key: 23, value: "N" },
        { key: 24, value: "O" },
        { key: 25, value: "P" },
        { key: 26, value: "Q" },
        { key: 27, value: "R" },
        { key: 28, value: "S" },
        { key: 29, value: "T" },
        { key: 30, value: "U" },
        { key: 31, value: "V" },
        { key: 32, value: "W" },
        { key: 33, value: "X" },
        { key: 34, value: "Y" },
        { key: 35, value: "Z" },
        { key: 36, value: "-" },
      ];
    },

3.设置随机函数,传入total来设置长度,随机从0~36,从10开始到36都是对应非数字字符。

generateRandomNumbers(total) {
      let that = this;
      let str = "";
      let number = 36;//标识”-“
      for (let i = 0; i < total; i++) {
        if (i == 3) {
          number = 36;//当i=3的时候,让当前数字为36,字符为”-“
        } else {
          number = parseInt(Math.random() * 35);//将数字在0到35进行随机
        }
        if (number >= 10) {
       // 当前生成的随机数大于等于10则进行转换。
          str += that.numberConvertEnglishLetters(number); 
        } else {
          str += number.toString();
        }
      }
      return str;
    },

4.将大于等于10的数字转换为键值对中的值

    numberConvertEnglishLetters(number) {
      let map = this.numberConvertEnglishLettersMap();
      for (let i = 0; i < map.length; i++) {
        if (map[i].key == number) {
          return map[i].value;
        }
      }
    },

5.控制台可以由下代码得到结果

 

console.log("生成的长度:", total);
console.log(this.generateRandomNumbers(total));

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值