ID生成算法(二)

摘要:
上一篇文章介绍了一种使用雪花算法生成GUID的方法。接下来,我们介绍一种内部和外部方法来生成GUID并将其导出为txt文件的方法:显示代码!DOCTYPE html˃GUID保存GUID文件varGUID_ ALPHABET=“0123456789abdfghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_”;varGUID_长度=20,分辨率=[];Varguid=function{//更改参数i,并为{a=null提供所需数量!已验证此方法生成的大量ID不重复。

上一篇文章介绍了一种用雪花算法生成GUID的方法,下面介绍里外一种生成GUID并导出为.txt文件的方法:

话不多说 show you the code !

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>GUID</title>
</head>
<body>
    <button   type="button">保存GUID文件</button>
    <script type="text/javascript">
    var GUID_ALPHABET = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_";
    var GUID_LENGTH = 20,res = [];
    var guid = function(a) {
        // 改变参数i,想要多少个给多少
        for (var i = 0; i < 10; i++) {
            a = null != a ? a : GUID_LENGTH;
            for (var b = [], str = '', c = 0; c < a; c++) {
                b.push(GUID_ALPHABET.charAt(Math.floor(Math.random() * GUID_ALPHABET.length)));
            }
            str = b.join("");
            console.log('str--' + i, str);
            res.push(str+'
');
        }
        return res;
    };

    document.querySelector('#save').addEventListener('click', saveFile);

    function fakeClick(obj) {
        var ev = document.createEvent("MouseEvents");
        ev.initMouseEvent("click", true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
        obj.dispatchEvent(ev);
    }

    function exportRaw(name, data) {
        var urlObject = window.URL || window.webkitURL || window;
        var export_blob = new Blob([data]);
        var save_link = document.createElementNS("http://www.w3.org/1999/xhtml", "a");
        save_link.href = urlObject.createObjectURL(export_blob);
        save_link.download = name;
        fakeClick(save_link);
    }

    function saveFile() {
        var inValue = guid();
        exportRaw('guid.txt', inValue);
    }
    </script>
</body>

</html>

  另外,如果想要使生成的GUID更复杂,更有序,可以在这个生成的GUID字符串基础上加 时间戳 相关的业务分类字符串 等等。

已经验证该方法生成的大量ID没有重复。

免责声明:文章转载自《ID生成算法(二)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇nginx upstream模块vika维格表 11 月版本更新:安全设置、驾驶舱页面上线,让你从容掌控全局,还有自建小组件开放内测下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Snort-IPS-入侵防御系统安装及部署小记

安装环境为Ubuntu,使用源码编译方式安装并导入社区Snort规则;通过Splunk做GUI展示,联合防火墙做防御,依据Snort官网文档操作。 Ubuntu 18和20上的Snort 3.0.1用Splunk当SIEM 诺亚·迪特里希 内容介绍 安装Snort 配置网卡 安装OpenApplD 安装Snort规则集 启用内置规则 将PCAP文件传...

全网最详细的最新稳定OSSEC搭建部署(ossec-server(CentOS7.X)和ossec-agent(CentOS7.X))(图文详解)

不多说,直接上干货! 前言 写在前面的话,网上能够找到一些关于ossec方面的资料,虽然很少,但是总比没有强,不过在实际的使用过程中还是会碰到许多稀奇古怪的问题。整理整理我的使用过程,就当做一篇笔记吧。 PS:本文填了很多坑。 OSSEC是一款开源的基于主机的入侵检测系统,可以简称为HIDS。它具备日志分析,文件完整性检查,策略监控,rootkit检测,实...

php session存进去,取不出来

目录 一、检查 php.ini 二、查看 /var/tmp 是否有读写权限 ,如果没有: 三、检查 php-fpm 配置文件 四、重启 php-fpm 一、检查 php.ini vim /etc/php.ini 检查这几项: session.save_handler = files // session 的存储类型; session.auto_...

JS经纬度坐标转换

var GPS = { PI : 3.14159265358979324, x_pi : 3.14159265358979324 * 3000.0 / 180.0, delta : function (lat, lon) { // Krasovsky 1940 // // a = 63...

KendoGrid基础

一.KendoUI Grid 绑定单击双击事件 原文:http://blog.csdn.net/sakuya_tan/article/details/51437857 <div id="grid"></div> <script> var grid = $("#grid").kendoGrid({...

JS获取一行2列的表格数据

JS如下: 如何在JS中获取下拉框中的value和Text值呢? 获取Text值: document.getElementById(s[0]).options[window.document.getElementById(s[0]).selectedIndex].Text; 获取value值: document.getElementById(s[0]).o...