Premetto che non rispondo direttamente a te, ma più in generale al NG,
dato le risposte che hai ricevuto e che è un problema già sollevato in
passato. Inoltre non sapendo la tua casistica specifica, ignoro se
ricada in uno dei casi eccezionali che menziono sotto.
Fatta tale premessa, in JavaScript non c'è una funzione ad hoc perché né
in JS né in DOM si ha bisogno di creare id univoci. C'è stato un lungo
thread recentemente su questo NG che ha parlato anche di questo argomento.
Creare un ID univoco a runtime ha raramente senso (ovviamente ci sono
casi limite), per almeno due importanti ragioni:
1. Non puoi usarlo nei fogli di stile (è creato a runtime, non lo
conosci a priori).
2. Non puoi usarlo in JS per recuperare un elemento (è creato a runtime,
non lo conosci a priori).
Per quanto riguarda la prima ed eventualmente la seconda, potresti usare
un CSS selector che ti fa il match a livello di attributo id di uno
specifico prefisso, tipo `*[id^=myprefix]`. Ma è un operazione "costosa"
in termini di performance e puoi ottenere la stessa cosa usando una
classe CSS: `.myprefix` che è molto più performante e non ha bisogno di
incrementali a seguito; inoltre per recuperare in JS tali elementi
dovresti avere i browser che supportano tutti correttamente
`querySelectorAll`, o utilizzare librerie come Sizzle o jQuery (che usa
Sizzle) per emulare tale capacità. Ancora, le performance non sarebbero
il massimo.
Nel caso della seconda ovviamente potresti tenerti un riferimento agli
ID che stai creando a runtime in JS, in modo da usarlo poi come "indice"
per recuperare l'ID che ti serve, o scorrerli tutti. Tranne qualche
caso, anche questo ha poco senso in quanto in JS puoi tranquillamente
salvare direttamente il riferimento al nodo, esattamente come faresti
con la stringa dell'ID.