پرش به محتوا

کتابخانه

دانلود lodash-es و نشانی CDN ایرانی

lodash-es همون Lodash معروفه، فقط به شکل ES modules؛ مجموعه ای از تابع های کمکی جاوااسکریپت برای کار با آرایه، آبجکت، رشته و تابع. چون ماژولی عرضه شده، باندلرها می تونن فقط تابع هایی رو که استفاده کردی توی خروجی نگه دارن و بقیه رو دور بریزن.

نسخه رسمی و بدون تغییر، از منبع رسمی با مجوز MIT؛ هش هر فایل با منبع بررسی شده است.

آخرین نسخه
۴.۱۸.۱
نسخه‌ها در مخزن
۵
مجوز
MIT
سازنده
John-David Dalton
آخرین بررسی
آخرین به‌روزرسانی
توضیحات

آخرین نسخه

آخرین نسخه ۴.۱۸.۱ آخرین

۶۱۹ کیلوبایت· ۶۴۶ فایل· انتشار

دانلود
نشانی مستقیم فایل اصلی https://mirror.wbweb.ir/npm/lodash-es@4.18.1/bindAll.js
کد آماده با SRI <script src="https://mirror.wbweb.ir/npm/lodash-es@4.18.1/bindAll.js" integrity="sha256-LyM0KifF9YwZKSsKeF6swkfBRmPKRfwx1b1arKDKen4=" crossorigin="anonymous"></script>

SHA-256: 2f23342a27c5f58c19292b0a785eacc247c14663ca45fc31d5bd5aaca0ca7a7e

درباره lodash-es (لودش)

lodash-es همون Lodash معروفه، فقط به شکل ES modules. Lodash رو John-David Dalton راه انداخته و با مجوز MIT منتشر شده، یعنی توی پروژه های شخصی و تجاری هم می تونی ازش استفاده کنی. کارش اینه که کلی تابع کمکی آماده بده تا برای کارهای تکراری جاوااسکریپت مجبور نشی هر بار از صفر کد بنویسی: کپی عمیق از یه آبجکت، گروه بندی یه آرایه، حذف مقدارهای تکراری، یا خوندن امن مقداری که چند لایه توی آبجکت قایم شده.

یه مثال ملموس بزنم. فرض کن یه فروشگاه وردپرسی داری و کنار لیست محصولات یه فیلتر زنده گذاشتی. اگه با هر حرفی که کاربر تایپ می کنه یه درخواست بره سمت سرور، روی هاست اشتراکی خیلی زود فشار میاد. debounce دقیقاً همین جا به کار میاد: درخواست رو نگه می داره تا کاربر یه لحظه تایپ رو متوقف کنه. throttle برای رویدادهایی مثل اسکرول و تغییر اندازه پنجره خوبه. groupBy و uniq هم وقتی داده های محصول و دسته بندی رو توی مرورگر مرتب می کنی کمکت می کنن.

فرق lodash-es با بسته lodash معمولی توی نحوه عرضه اشه. چون ماژول ES هست، باندلرهایی مثل webpack، Rollup و Vite می تونن بفهمن کدوم تابع ها واقعاً استفاده شدن و بقیه رو از خروجی بیرون بذارن. نتیجه اش فایل سبک تر برای کاربرهایی با اینترنت کند هست. پس تابع ها رو جدا import کن و کل کتابخانه رو نکش توی پروژه، مگه اینکه مطمئن باشی باندلرت tree shaking رو درست انجام می ده. وردپرس هم معمولاً برای ادیتور بلوک خودش یه نسخه lodash همراه داره. پس اگه برای افزونه یا بلوک سفارشی کد می نویسی، قبل از اضافه کردن یه نسخه جدا چک کن که واقعاً لازمش داری یا نه.

جاهایی هم هست که لازمش نداری. اگه فقط یه اسکریپت کوچیک توی قالب داری و بیلد نداری، جاوااسکریپت امروزی برای map و filter و کپی ساده خودش کافیه. اگه پروژه Node با CommonJS داری، بسته lodash معمولی راحت تره. نسخه های رسمی و بدون تغییر lodash-es توی مخزن داخلی ما هم در دسترسه، پس وقتی دسترسی به npm مشکل پیدا کرد، کارت نمی خوابه.

راهنمای استفاده

اینکه lodash-es رو چطور استفاده کنی، بیشتر به بیلد داشتن پروژه ات بستگی داره. قدم های کلی اینه:

  • اگه پروژه ات با npm و باندلر کار می کنه، بسته lodash-es رو به پروژه اضافه کن. اگه npm در دسترس نیست، فایل رسمی رو از همین مخزن بگیر و کنار پروژه بذار.
  • فقط تابع هایی رو که لازم داری import کن. مثلاً برای جستجوی زنده فقط debounce رو بیار، نه کل کتابخانه رو.
  • بیلد بگیر و حجم خروجی رو چک کن. اگه غیرمنتظره بزرگ شده بود، احتمالاً یه جا کل کتابخانه import شده.
  • اگه بدون باندلر می خوای توی صفحه استفاده کنی، از کد آماده پایین همین صفحه کمک بگیر. اسکریپت باید با type="module" لود بشه، چون بدون اون مرورگر ES modules رو اجرا نمی کنه.
  • توی وردپرس اسکریپت رو با تابع های enqueue خود وردپرس و فقط توی صفحه هایی که لازمش دارن لود کن، نه توی کل سایت. بسته به نسخه وردپرس ممکنه لازم باشه ویژگی type="module" رو جدا بهش اضافه کنی.
  • بعد از راه اندازی، کنسول مرورگر رو نگاه کن و مطمئن شو خطای import نداری، مخصوصاً اگه فایل ها رو روی هاست خودت گذاشتی.

همه نسخه‌ها (۵)

نسخه‌های ۴.x ۵ نسخه
  • ۴.۱۸.۱ آخرین نسخه ۶۱۹ کیلوبایت·
    دانلودنسخه 4.18.1
    نشانی مستقیم فایل اصلی 4.18.1 https://mirror.wbweb.ir/npm/lodash-es@4.18.1/bindAll.js
  • ۴.۱۸.۰ ۶۱۹ کیلوبایت·
    دانلودنسخه 4.18.0
    نشانی مستقیم فایل اصلی 4.18.0 https://mirror.wbweb.ir/npm/lodash-es@4.18.0/bindAll.js
  • ۴.۱۷.۲۳ ۶۱۹ کیلوبایت·
    دانلودنسخه 4.17.23
    نشانی مستقیم فایل اصلی 4.17.23 https://mirror.wbweb.ir/npm/lodash-es@4.17.23/bindAll.js
  • ۴.۱۷.۲۲ ۶۱۹ کیلوبایت·
    دانلودنسخه 4.17.22
    نشانی مستقیم فایل اصلی 4.17.22 https://mirror.wbweb.ir/npm/lodash-es@4.17.22/bindAll.js
  • ۴.۱۷.۲۱ قدیمی‌ترین نسخه ۶۱۷ کیلوبایت·
    دانلودنسخه 4.17.21
    نشانی مستقیم فایل اصلی 4.17.21 https://mirror.wbweb.ir/npm/lodash-es@4.17.21/bindAll.js

پرسش‌های رایج

  • تابع های هر دو یکین و فرق توی قالب عرضه شونه. lodash-es به شکل ES modules نوشته شده و باندلرها می تونن فقط بخش های استفاده شده رو توی خروجی نگه دارن. بسته lodash معمولی CommonJS هست و برای پروژه های Node یا ابزارهای قدیمی تر راحت تره.

  • همون تابع رو جدا import کن. اگه باندلرت tree shaking رو پشتیبانی می کنه، import اسمی هم کافیه. مهم اینه که بی دلیل کل کتابخانه وارد پروژه نشه. بعد از بیلد هم حجم خروجی رو چک کن تا مطمئن بشی چیز اضافه ای نیومده.

  • می شه، ولی راحت ترین راه نیست. اسکریپت باید با type="module" لود بشه و مرورگر باید بتونه فایل های ماژول رو پیدا کنه. چون کتابخانه از فایل های زیادی ساخته شده، برای سایت واقعی بهتره با یه باندلر یه خروجی یکپارچه بسازی.

  • بله، مجوزش MIT هست و استفاده شخصی و تجاری رو اجازه می ده. فقط باید اعلان مجوز و حق نشر رو توی پروژه نگه داری. اگه سایتی رو برای مشتری تحویل می دی، این بخش ها رو از فایل ها پاک نکن.

  • برای کارهای ساده مثل map، filter و کپی سطحی معمولاً نه. ولی برای debounce، throttle، کپی و ادغام عمیق، گروه بندی و مسیرهای تو در تو، خیلی ها هنوز یه کتابخانه آماده و آزموده رو ترجیح می دن. تصمیمش با نیاز پروژه ات.

چیزی که لازم دارید اینجا نیست؟

نام کتابخانه، افزونه یا قالب را بفرستید؛ پس از بررسی، نسخه‌های رسمی آن به مخزن اضافه می‌شود.