Avatar ·

كيفية إنشاء GUID / UUID في JavaScript؟

مرحبًا بالجميع! أنا أكتب تطبيق ويب صغيرًا باستخدام JavaScript الخالص، وأحتاج إلى إنشاء معرفات فريدة لكيانات مختلفة (مثل المهام في قائمة المهام أو السجلات في التخزين المحلي). أعلم أنه في لغات أخرى (Python، C#) توجد دوال مدمجة لإنشاء GUID/UUID، لكنني لم أجد شيئًا مشابهًا في JavaScript. المشكلة هي أنني لا أريد استخدام عدادات بسيطة مثل `let id = 0; id++`، لأن العداد يُعاد تعيينه عند إعادة تحميل الصفحة، وإذا كان التطبيق سيعمل مع عدة علامات تبويب أو مع خادم، فقد تحدث تصادمات. حاولت كتابة دالة خاصة بي تعتمد على `Math.random()`، لكنني قرأت أن هذا غير آمن ولا يضمن التفرد. إليك ما توصلت إليه: ```javascript function generateId() { return Math.random().toString(36).substr(2, 9); } ``` هذا يعمل، لكنني أخشى أنه في مرحلة ما قد تظهر تكرارات، خاصة إذا تم إنشاء العديد من المعرفات على التوالي. من فضلك، أخبرني كيف يمكنني...