我知道如何在使用npm管理的库(如uuid
)中使用node.js来实现此功能,但在基于浏览器的SAP UI5 JavaScript代码中,有什么体面的方法可以做到这一点呢?
我知道如何在使用npm管理的库(如uuid
)中使用node.js来实现此功能,但在基于浏览器的SAP UI5 JavaScript代码中,有什么体面的方法可以做到这一点呢?
const myUniversallyUniqueID = globalThis.crypto.randomUUID();
console.log(myUniversallyUniqueID); // e.g.: "a38aa6d5-bf7e-4caa-afe1-0144507e215c"
crypto.randomUUID
现在被所有主要的 JS 引擎支持。例如在浏览器中和 Deno / Node.js 中可以使用 globalThis.crypto.randomUUID()
。
虽然不是 UUID,但 UI5 提供了函数模块sap/base/util/uid
,返回一个字符串,该字符串在同一 JavaScript 上下文中是唯一的(如果两个 iframe 同时运行 uid()
,很可能会生成完全相同的 UID)。
const myUniqueID = uid(); // uid required from "sap/base/util/uid"
console.log(myUniqueID); // e.g.: "id-1650235945092-39"
这个实现非常简单易懂。
globalThis.crypto.randomUUID()
现在在所有主流浏览器中可用。我已经相应地更新了我的答案。 - Boghyon Hoffmann