# Generarea de id-uri unice și de hash-uri

> Creează id-uri cu UID() și GUID() și hash-uri cu HASH() și știi pe care să-l folosești unde.

Framework: total5
Product: Total.js 5 (total5@0.0.19)
Language: ro
Content-SHA256: 8ab862cdfea004f71f37a15444342102d8a75bcbab61f02c7ab21fad4856181b
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: total5-installed@total5@0.0.19
Review: not-recorded

- `UID()` creează un id scurt, ordonat în timp, unic (12 caractere). Se sortează după momentul creării și este ceea ce validează tipul de intrare `UID`. Folosește-l drept cheie primară a documentelor tale.
- `GUID(length)` creează un șir aleatoriu de lungimea cerută. Folosește-l pentru token-uri și nume de fișiere.
- `HASH(value)` returnează un hash numeric rapid (necriptografic). Folosește-l pentru chei de cache, ETag-uri și sharding, niciodată pentru parole.

```js controllers/ids.js
exports.install = function() {
	ROUTE('GET /ids/', ids);
};

function ids($) {

	var a = UID();
	var b = UID();

	$.json({
		uid: a,
		uidlength: a.length,
		valid: a.isUID(),
		different: a !== b,
		guid: GUID(20),
		sameHash: HASH('total') === HASH('total'),
		otherHash: HASH('total') !== HASH('Total'),
		type: typeof(HASH('total'))
	});
}
```
