zoukankan      html  css  js  c++  java
  • 对输入密码的一个加密规则和方式的编写

    getPwd () {
          this.form.pwd = this.randomPassword(8)
        },
        randomPassword(length) {
          length = Number(length)
          // Limit length
          if (length < 8) {
            length = 8
          } else if (length > 16) {
            length = 16
          }
          let passwordArray = ['ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz', '1234567890', '@#$%&'];
          var password = [];
          let n = 0;
          for (let i = 0; i < length; i++) {
            // If password length less than 9, all value random
            if ( password.length < (length - 4) ) {
              // Get random passwordArray index
              let arrayRandom = Math.floor(Math.random() * 4);
              // Get password array value
              let passwordItem = passwordArray[arrayRandom];
              // Get password array value random index
              // Get random real value
              let item = passwordItem[Math.floor(Math.random() * passwordItem.length)];
              password.push(item);
            } else {
              // If password large then 9, lastest 4 password will push in according to the random password index
              // Get the array values sequentially
              let newItem = passwordArray[n];
              let lastItem = newItem[Math.floor(Math.random() * newItem.length)];
              // Get array splice index
              let spliceIndex = Math.floor(Math.random() * password.length);
              password.splice(spliceIndex, 0, lastItem);
              n++
            }
          }
          return password.join("");
        }

  • 相关阅读:
    [bzoj1568]李超线段树模板题(标志永久化)
    [tyvj1860]后缀数组
    [poj3264]rmq算法学习(ST表)
    LintCode-82.落单的数
    LintCode-53.翻转字符串
    LintCode-56.两数之和
    LintCode-379.将数组重新排序以构造最小值
    LintCode-5.第k大元素
    LintCode-3.统计数字
    LintCode-4.丑数 II
  • 原文地址:https://www.cnblogs.com/robot666/p/12080914.html
Copyright © 2011-2022 走看看