Skip to content

randomString

رشته‌ای تصادفی با پیشوند برچسب زمانی می‌سازد تا کمتر تکراری شود.

API

randomString

بازگشت

آرگومانتوضیحنوع
stringرشتهٔ تصادفی (قالب: برچسب زمانی-نویسه‌های تصادفی)string

پارامترها

پارامترتوضیحنوعپیش‌فرض
lenطول بخش تصادفی (بدون برچسب زمانی)number8

نمونه

کاربرد پایه

js
import { randomString } from 'ranuts';

const str = randomString();
console.log(str); // برای نمونه: '1703123456789-abc12345'

تعیین طول

js
import { randomString } from 'ranuts';

const str = randomString(12);
console.log(str); // برای نمونه: '1703123456789-abcdefghijkl'

ساختن شناسهٔ یکتا

js
import { randomString } from 'ranuts';

const uniqueId = randomString(16);
console.log('شناسهٔ یکتا:', uniqueId);

نام فایل موقت

js
import { randomString } from 'ranuts';

const tempFileName = `temp_${randomString(10)}.txt`;
console.log(tempFileName); // برای نمونه: 'temp_1703123456789-xyz1234567.txt'

یادداشت‌ها

  1. یکتایی: چون برچسب زمانی در آن هست، رشتهٔ ساخته‌شده به‌سختی تکرار می‌شود.
  2. مجموعهٔ نویسه‌ها: از ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678 استفاده می‌کند و نویسه‌های اشتباه‌گرفتنی (مانند 0، O، 1، I، l) را کنار گذاشته است.
  3. قالب: به شکل {برچسب زمانی}-{نویسه‌های تصادفی} برمی‌گردد.
  4. طول: آرگومان len تنها طول بخش تصادفی را تعیین می‌کند و برچسب زمانی و خط تیره را در بر نمی‌گیرد.

getRandomString

گزینه‌ای سبک‌تر: نه پیشوند زمانی دارد و نه مجموعهٔ نویسهٔ محدود؛ فقط Math.random().toString(36) که به len نویسه بریده شده است (مبنای ۳۶، یعنی 0-9a-z). به اندازهٔ randomString در برابر برخورد مقاوم نیست؛ آن را برای چیزهایی مانند شناسهٔ یک‌بارمصرف DOM یا پارامتر شکستن انباره به کار ببرید که یکتایی‌شان لازم نیست از برخورد برچسب زمانی جان به در ببرد.

js
import { getRandomString } from 'ranuts/utils';

getRandomString(); // برای نمونه 'k3j9x2p1' (۸ نویسه)
getRandomString(4); // برای نمونه 'a1b2'

منتشرشده تحت مجوز MIT.