发现Node里有两个库可以生成uuid,一个是node-uuid,另一个是flake-idgen
node-uuid
// install
npm install node-uuid
// use
var uuid = require('node-uuid');
var uuid1 = uuid.v1();
var uuid2 = uuid.v1({node:[0x01,0x23,0x45,0x67,0x89,0xab]});
var uuid3 = uuid.v1({node:[0, 0, 0, 0, 0, 0]})
var uuid4 = uuid.v4();
var uuid5 = uuid.v4();
result
// uuid1 -> ec654ec1-7f8f-11e3-ae96-b385f4bc450c
// uuid2 -> ec666030-7f8f-11e3-ae96-0123456789ab
// uuid3 -> ec66fc70-7f8f-11e3-ae96-000000000000
// uuid4 -> 32a4fbed-676d-47f9-a321-cb2f267e2918
// uuid5 -> 8b68cf5b-d619-4281-b560-1578b0ee891d
#flake-idgen
// install
npm install flake-idgen
// use
var FlakeIdGen = require('flake-idgen')
, intformat = require('biguint-format')
, generator = new FlakeIdGen;
var id1 = generator.next();
var id2 = generator.next();
var id3 = intformat(id1, 'dec');
var id4 = intformat(id2, 'hex', {prefix:'0x'})
result
// id1 -> <Buffer 50 e8 46 15 20 c0 00 02>
// id2 -> <Buffer 50 e8 46 15 20 c0 00 03>
// id3 -> 5829986774188818434
// id4 -> 0x50e8461520c00003