ساخت guid

چگونه یک GUID / UUID ایجاد کنم؟

سوال

چگونه می توانم GUID (شناسه های منحصر به فرد جهانی) در جاوا اسکریپت ایجاد کنم؟ GUID / UUID باید حداقل 32 کاراکتر داشته باشد و باید در محدوده ASCII باقی بماند تا هنگام عبور دادن آنها دچار مشکل نشود.

من مطمئن نیستم که چه روال هایی در همه مرورگر ها موجود است، تولید کننده اعداد تصادفی داخلی چقدر “تصادفی” است و غیره.

پاسخ

اکثر برنامه نویسان اینجا مایل به استفاده از ماژول uuid هستند. به خوبی تست شده و پشتیبانی می شود.

این تابع crypto.randomUUID() یک استاندارد در حال ظهور است که در Node.js و تعداد فزاینده ای از مرورگر ها پشتیبانی می شود. با این حال، از آنجایی که  APIهای مرورگر جدید محدود به زمینه‌های امن هستند، این روش فقط برای صفحاتی که به صورت محلی ( localhost یا 127.0.0.1) یا از طریق HTTPS ارائه می ‌شوند در دسترس است. اگر مایلید که این محدودیت برای crypto.randomUUID() شما برداشته شود، می ‌توانید این مشکل GitHub را دنبال کنید.

اگر هیچ کدام از اینها برای شما کار نمی کند، این روش وجود دارد (بر اساس پاسخ اصلی به این سوال):

function uuidv4() {
  return ([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g, c =>
    (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16)
  );
}

console.log(uuidv4());

برای یادگیری جاوا اسکریپت می توانید از مسیر کارآموزی فرانت اند استفاده کنید.

پاسخ‌ها

آدرس ایمیل شما منتشر نخواهد شد.

پل ورود به بازار تکنولوژی

مشاوره رایگان انتخاب مسیر

با کمک مشاورهای رستاوا آکادمی مسیر کارآموزی مناسب برای خودت رو برای ورود به بازار کار تکنولوژی انتخاب کن

توسعه فردی برای حرفه‌ای شدن

منتورهای رستاوا و دوره‌های ما شما رو برای کارآموزی و در نهایت جذب و استخدام آماده میکنن

مدرک بین المللی و استانداردهای جهانی

یادگیری با استاندار های بین المللی و دریافت مدرک از Credx Academy کانادا

اگر در مسیرهای کارآموزی ما پذیرش بگیری موقعیت‌های کارآموزی و استخدام در پروژه‌ها و شرکت های بین المللی از طریق مجموعه رستاوا به روت باز می شه.

۲ هفته رایگان

همین حالا با منتورها

ارتباط آنی بگیر!