آشنایی با weakSet و weakMap در ✌️
در جاوا اسکریپ دو تا ساختمان داده ی دیگه به اسم های WeakMap و WeakSet وجود داره که مشابه Map و Set هستن، با این تفاوت که تنها Object و آرایه و Non-Registered Symbol ها رو به عنوان Key قبول می کنند، اینجوری وقتی که Key مقدار Null بگیره از طریف WeakMap یا WeakSet هم قابل دسترسی نخواهد بود و Garbage-Collector محتوای اون رو از حافظه پاک میکنه.
مثالی از WeakMap:
مثالی از WeakSet:
در کل توی پروژه های بزرگ که بهینه سازی در حد چند خط هم مهمه از این دو ساختار استفاده میشه.
مثال و اطلاعات بیشتر و میتونید تو داکیومنت زیر مطالعه کنید⬇️
Document🌐
#javascript #weakset #weakmap
@CodeModule
در جاوا اسکریپ دو تا ساختمان داده ی دیگه به اسم های WeakMap و WeakSet وجود داره که مشابه Map و Set هستن، با این تفاوت که تنها Object و آرایه و Non-Registered Symbol ها رو به عنوان Key قبول می کنند، اینجوری وقتی که Key مقدار Null بگیره از طریف WeakMap یا WeakSet هم قابل دسترسی نخواهد بود و Garbage-Collector محتوای اون رو از حافظه پاک میکنه.
مثالی از WeakMap:
let weakMap = new WeakMap();
let key1 = {id: 1};
let key2 = {id: 2};
let key3 = {id: 3};
weakMap.set(key1, "Value associated with key1");
weakMap.set(key2, "Value associated with key2");
console.log(weakMap.get(key1)); // Output: Value associated with key1
key1 = null; // حذف مرجع key1
// حالا حافظه رو بررسی کنید، ممکنه مقدار مرتبط با key1 حذف بشه چون دیگه هیچ مرجعی بهش اشاره نمیکنه
مثالی از WeakSet:
let weakSet = new WeakSet();
let obj1 = {name: "Alice"};
let obj2 = {name: "Bob"};
let obj3 = {name: "Charlie"};
weakSet.add(obj1);
weakSet.add(obj2);
console.log(weakSet.has(obj1)); // Output: true
obj1 = null; // حذف مرجع obj1
// حالا حافظه رو بررسی کنید، ممکنه obj1 از WeakSet حذف بشه چون دیگه هیچ مرجعی بهش اشاره نمیکنه
در کل توی پروژه های بزرگ که بهینه سازی در حد چند خط هم مهمه از این دو ساختار استفاده میشه.
مثال و اطلاعات بیشتر و میتونید تو داکیومنت زیر مطالعه کنید
Document
#javascript #weakset #weakmap
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👌2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁4👌2
در واقع Astro.js یک فریمورک جاوااسکریپتی مدرن هست که برای ساخت وبسایتهای سریع و با کارایی بالا طراحی شده است. این فریمورک از معماری سمت کلاینت برای ایجاد وبسایتهای پویا استفاده میکنه و به طور خاص برای بهبود سرعت بارگیری وبسایت و بهینهسازی تجربه کاربری ارائه شده است.
در واقع Astro رو میتونیم در بین معماریهای مختلف فریمورک در دستهبندی MPA قرار داد. منظور از MPA همان Multi-Page Application یا اپلیکیشن چند صفحهایه.
این دست از فریمورکها برای وبسایتها و کاربریهایی مناسبه که قصد ارائه محتوا در صفحات مختلف رو دارن، برعکس معماری SPA که در اون تلاش میشه همه چیز در یک صفحه (معماری تک صفحهای) قرار بگیره، در Astro شما امکان اینو پیدا خواهید کرد تا محتواتونو در صفحات مختلف با لینکهای متفاوت قرار بدید.
همچنین فریمورک Astro.js دارای امکاناتی مثل کامپایلکردن از پیش و بهینهسازی برای سرعت بالا در بارگیری وبسایت هست. این فریمورک از React و Vue.js الهام میگیره، اما با هدف ارائه راهحلهایی سادهتر و کارآمدتر، جهت توسعه وبسایتها سریع تر عمل میکنه.
Document
#astro #framework
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡3🔥2
وب اپلیکیشن یا pwa چیه و چرا باید یادش بگیریم؟ 💀
وب اپلیکیشن یا PWA که مخفف کلمه Progressive Web Apps هست، به معنای اپلیکیشن تحت وب پیش رونده میباشد.
این نوع اپلیکیشن در سال ۲۰۱۵ توسط گوگل معرفی شد. Pwa نیاز به نصب نداره و از طریق مرورگر در اختیار کاربران قرار میگیره.
در طراحی وب اپلیکیشنها این امکان داده شده که کاربر هم بتونه به صورت آنلاین و هم آفلاین از وب اپلیکیشن استفاده کنه. در وب اپلیکیشنهای آفلاین، هسته اصلی برنامه در cache مرورگر ذخیره شده و در صورتی که ارتباط با اینترنت نیز قطع بشه، این اپلیکیشنها بارگذاری خواهند شد و هنگام اتصال مجدد، اپلیکیشن به روزرسانی خواهد شد.
مزایای استفاده از pwa⬇️
🔵 محدود نبودن به سیستم عامل
از مهم ترین ویژگیهای وب اپلیکیشنها، عدم محدودیت به سیستم عامل هست. قبل از پیدایش pwa، کسبوکارها باید نرم افزار خودشون و تو دو نسخه اندروید و ios طراحی میکردن تا بتونن نظر تمام مشتریای خودشونو جلب کنن.
🔵 بدون نیاز به نصب و اشغال حافظه
هر برنامهای که روی تلفن همراه نصب میشه، بخشی از حافظه تلفن و اشغال میکنه. وب اپلیکیشنها از طریق مرورگر کاربر قابل دسترسی اند و نیازی به نصب ندارن؛ به همین دلیل حافظه تلفن همراه کاربر اشغال نمیکنن و کاربر هر وقت بخواد به راحتی و از طریق مرورگر به اون دسترسی خواهد داشت.
🔵 بدون نیاز به بروزرسانی
طراحی نسخه تحت وب PWA به گونه ای انجام میشه که دیگه نیازی به بروز رسانی نداره و از اونجایی که روی یک سرور قرار دارن، با هربار ورود به، آخرین نسخه وب اپلیکیشن در دسترس شما قرار خواهد گرفت.
🔵 واکنشگرا بودن
وب اپلیکیشنها به صورت ریسپانسیو طراحی میشن؛ این به این معنیه که روی همه دستگاهها با اندازه صفحه نمایشگر مختلف، عملکرد و نمایش خوبی دارن؛ به همین دلیل تمامی کاربرا با هر نوع دیوایس میتونن به راحتی از وب اپلیکیشن شما استفاده کنن.
🔵 هزینه پایینتر نسبت به اپلیکیشن
طراحی وب اپلیکیشن، نسبت به اپلیکشنهای موبایل هزینه کمتری داره. وقتی که شما اقدام به طراحی اپلیکیشن برای کسبوکار یا پروژه ای میکنید، باید اپلیکیشن خودتون و در دو نسخه اندروید و ios تهیه کنید و نیاز به یک تیم برنامه نویسی برای هر یک از نسخهها خواهید داشت. اما برای تهیه وب اپلیکیشن، شما تنها نیازمند یک تیم طراحی وب سایت حرفهای هستید که با زبانهای Html، CSS و سایر زبانهای طراحی وب آشنایی داشته باشن.
وب اپلیکیشنها نوع جدیدی از اپلیکیشنها هستن که به علت مزایای بالای آنها نسبت به طراحی اپلیکیشن، مورد استفاده بسیاری از کسبوکارها قرار گرفتن. قطعا یادگیری pwa، تو رزومه شما تاثیر بسیار خوبی میذاره و شما رو نسبت به سایر برنامه نویسا یه پله حرفه ای تر میکنه😎
#pwa
@CodeModule
وب اپلیکیشن یا PWA که مخفف کلمه Progressive Web Apps هست، به معنای اپلیکیشن تحت وب پیش رونده میباشد.
این نوع اپلیکیشن در سال ۲۰۱۵ توسط گوگل معرفی شد. Pwa نیاز به نصب نداره و از طریق مرورگر در اختیار کاربران قرار میگیره.
در طراحی وب اپلیکیشنها این امکان داده شده که کاربر هم بتونه به صورت آنلاین و هم آفلاین از وب اپلیکیشن استفاده کنه. در وب اپلیکیشنهای آفلاین، هسته اصلی برنامه در cache مرورگر ذخیره شده و در صورتی که ارتباط با اینترنت نیز قطع بشه، این اپلیکیشنها بارگذاری خواهند شد و هنگام اتصال مجدد، اپلیکیشن به روزرسانی خواهد شد.
مزایای استفاده از pwa
از مهم ترین ویژگیهای وب اپلیکیشنها، عدم محدودیت به سیستم عامل هست. قبل از پیدایش pwa، کسبوکارها باید نرم افزار خودشون و تو دو نسخه اندروید و ios طراحی میکردن تا بتونن نظر تمام مشتریای خودشونو جلب کنن.
هر برنامهای که روی تلفن همراه نصب میشه، بخشی از حافظه تلفن و اشغال میکنه. وب اپلیکیشنها از طریق مرورگر کاربر قابل دسترسی اند و نیازی به نصب ندارن؛ به همین دلیل حافظه تلفن همراه کاربر اشغال نمیکنن و کاربر هر وقت بخواد به راحتی و از طریق مرورگر به اون دسترسی خواهد داشت.
طراحی نسخه تحت وب PWA به گونه ای انجام میشه که دیگه نیازی به بروز رسانی نداره و از اونجایی که روی یک سرور قرار دارن، با هربار ورود به، آخرین نسخه وب اپلیکیشن در دسترس شما قرار خواهد گرفت.
وب اپلیکیشنها به صورت ریسپانسیو طراحی میشن؛ این به این معنیه که روی همه دستگاهها با اندازه صفحه نمایشگر مختلف، عملکرد و نمایش خوبی دارن؛ به همین دلیل تمامی کاربرا با هر نوع دیوایس میتونن به راحتی از وب اپلیکیشن شما استفاده کنن.
طراحی وب اپلیکیشن، نسبت به اپلیکشنهای موبایل هزینه کمتری داره. وقتی که شما اقدام به طراحی اپلیکیشن برای کسبوکار یا پروژه ای میکنید، باید اپلیکیشن خودتون و در دو نسخه اندروید و ios تهیه کنید و نیاز به یک تیم برنامه نویسی برای هر یک از نسخهها خواهید داشت. اما برای تهیه وب اپلیکیشن، شما تنها نیازمند یک تیم طراحی وب سایت حرفهای هستید که با زبانهای Html، CSS و سایر زبانهای طراحی وب آشنایی داشته باشن.
وب اپلیکیشنها نوع جدیدی از اپلیکیشنها هستن که به علت مزایای بالای آنها نسبت به طراحی اپلیکیشن، مورد استفاده بسیاری از کسبوکارها قرار گرفتن. قطعا یادگیری pwa، تو رزومه شما تاثیر بسیار خوبی میذاره و شما رو نسبت به سایر برنامه نویسا یه پله حرفه ای تر میکنه
#pwa
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5⚡3👌3
Please open Telegram to view this post
VIEW IN TELEGRAM
😁7💔2
انیمیشن های جادویی با Framer Motion⏬
کتابخانه Framer Motion، یک کتابخانه جاوااسکریپتی برای ایجاد انیمیشنهای تعاملی در وب هست. این کتابخانه به دولوپرا اجازه میده تا به راحتی، انیمیشنها و ترکیبات حرکتی مختلف رو به وبسایتها و پروژه های خودشون اضافه کنن. از جمله ویژگیهای مهم این کتابخانه علاوه بر سادگی، پشتیبانی از چندین پلتفرم مختلف مانند وب، React Native و محیطهای دیگر هست. Framer Motion از یک سینتکس داخلی تمیز و اجزای React بهره میبره که این کتابخانه رو بک انتخاب مناسب برای توسعه دهندگان React میکنه.
کتابخانه Framer Motion دارای ویژگیهای متعددیه که امکان ایجاد انیمیشنهای پویا و جذاب و برای دولوپرا فراهم میکنه.
برخی از ویژگی های Framer Motion⬇️
🔵 سادگی
🔵 ترکیبات حرکتی پیشرفته
🔵 پشتیبانی از چندین پلتفرم
🔵 انیمیشنهای چند بعدی
این تنها چند ویژگی از کتابخانه Framer Motion هست که اونو به یکی از ابزارهای محبوب برای توسعه انیمیشن در وب تبدیل کرده.
پیشنهاد میکنم حتما یه سر به داکیومنت این کتابخانه بزنید⚡️
Document🌐
#animation #framer_motion
کتابخانه Framer Motion، یک کتابخانه جاوااسکریپتی برای ایجاد انیمیشنهای تعاملی در وب هست. این کتابخانه به دولوپرا اجازه میده تا به راحتی، انیمیشنها و ترکیبات حرکتی مختلف رو به وبسایتها و پروژه های خودشون اضافه کنن. از جمله ویژگیهای مهم این کتابخانه علاوه بر سادگی، پشتیبانی از چندین پلتفرم مختلف مانند وب، React Native و محیطهای دیگر هست. Framer Motion از یک سینتکس داخلی تمیز و اجزای React بهره میبره که این کتابخانه رو بک انتخاب مناسب برای توسعه دهندگان React میکنه.
کتابخانه Framer Motion دارای ویژگیهای متعددیه که امکان ایجاد انیمیشنهای پویا و جذاب و برای دولوپرا فراهم میکنه.
برخی از ویژگی های Framer Motion
این تنها چند ویژگی از کتابخانه Framer Motion هست که اونو به یکی از ابزارهای محبوب برای توسعه انیمیشن در وب تبدیل کرده.
پیشنهاد میکنم حتما یه سر به داکیومنت این کتابخانه بزنید
Document
#animation #framer_motion
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👌3⚡2
در واقع Mobx یک کتابخانه مدیریت استیت برای برنامههای جاوااسکریپته که به طور معمول با React استفاده میشه. در Mobx مفهوم اصلی، observables ها هستن که واکنشپذیریو تو برنامه شما فعال میکنن.
استیت منیجمنت Mobx از الگوی تغییرات رفع اشکال (reactive programming) استفاده میکنه تا همگام با تغییرات در دادهها، رابط کاربری رو بهروز کنه.
در کل استیت منیجمنت MobX نسبت به سایر استیت منیجمنت ها مثل redux و... بسیار ساده تر و کم حجم تر هست و کار باهاش تجربه دلنشینی برای شما به ارمغان میاره. برای یادگیری این کتابخانه میتونید به داکیومنتش مراجعه کنید
Document
#library #state_managment #mobx
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4⚡2
یه ابزار کاربردی برای لینوکس بازا🪴
این سایت قابلیت اینو داره که هر دستور shell ای که وارد میکنید رو وظیفشو بهتون بگه!🔥
➡️ Website◀️
#linux #shell #tools
@CodeModule
این سایت قابلیت اینو داره که هر دستور shell ای که وارد میکنید رو وظیفشو بهتون بگه!
#linux #shell #tools
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4⚡3👌2
Good Night 🌚 ✨
هر احمقی میتونه کدهایی بنویسه که کامپیوتر بفهمه، اما برنامهنویس خوب کدهایی مینویسه که دیگر انسانها هم بتونن درک کنن.
@CodeModule
هر احمقی میتونه کدهایی بنویسه که کامپیوتر بفهمه، اما برنامهنویس خوب کدهایی مینویسه که دیگر انسانها هم بتونن درک کنن.
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥6👌4
در اصل Lodash یک کتابخانه قدرتمند جاوا اسکریپت هست که مجموعهای از توابع کاربردی برای انجام وظایف رایج در برنامهنویسی رو ارائه میده. این کتابخانه به شما کمک میکنه تا کدتونو کوتاهتر، خواناتر و کارآمدتر کنید.
برای اطلاعات بیشتر و نحوه استفاده از این کتابخانه، میتونید به داکیومنتش مراجعه کنید
Document
#lodash #library #js
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👌2
در واقع Alpine.js یکی از فریم ورک های جاوا اسکریپته که به شما این امکان رو میده پروژه هاتون و با کد کمتر و بهینه تر بنویسید !
همچنین Alpine.js مثل انگولار، React.js، Vue.js و Svelte این امکان رو میده تا برنامه نویس به صورت بهینه کدنویسی کنه و با دردسر کمتری کد خودشو تغییر بده و با استفاده از یک رابط، برنامهی خودش رو آسونتر توسعه بده.
برای اطلاعات بیشتر و نحوه نصب و استفاده از Alpine.js، میتونید به داکیومنتش مراجعه کنید.
Document
#framework #alpine
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡5🔥2
چند سایت کاربردی برای نوشتن رزومه انگلیسی ⚡️
🔴 https://www.resume.com
🔴 https://www.topresume.com
🔴 https://www.visualcv.com
🔴 https://www.resumegenius.com
#resume
@CodeModule
#resume
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡5🔥2👌2
5 کتابخانه کاربردی که component های آماده tailwind-css ارائه میدن🔥
1️⃣ Flowbite
2️⃣ Tailwind Elements
3️⃣ Tailwind Templates
4️⃣ Daisy UI
5️⃣ Tailwind UI
#tailwind
@CodeModule
#tailwind
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8⚡2
در پست های قبل راجب اهمیت تست نویسی صحبت کردیم و امروز میخوایم یکی از محبوبترین فریمورکها برای این کار، یعنی Jest و بررسی کنیم😎
✅ فریمورک Jest چیه؟
در واقع Jest یک فریمورک تست نویسی جاوااسکریپتی هست که امروزه به طور گستردهای مورد استفاده قرار میگیره. این فریمورک با همه فریمورکهای مدرن جاوا اسکریپت مثل React، Angular، Vue، Node و نظایر اینها سازگاری داره.
این فریمورک در اصل توسط فیسبوک توسعه داده شده و برای جامعه برنامه نویسان جهت استفاده و توسعه متن باز شده است.
❓ چرا Jest و انتخاب کنیم؟
وضعیت پرسشنامه سال ۲۰۱۸ جاوااسکریپت نشون میده که Jest محبوبترین و پر استفادهترین فریمورک تستینگ برای جاوااسکریپت بوده و حدود ۳۹٫۶% از توسعه دهنده ها از اون استفاده میکردن.
و همچنین Facebook، Twitter، Airbnb، Instagram، Spotify و بسیاری از استارتاپهای بزرگ، همگی از این فریمورک برای تست محصولاتشون که با جاوااسکریپت نوشته شده، استفاده میکنن.
✅ مزایای فریمورک Jest
◀️ بدون پیکربندی
◀️ استفاده ساده
◀️ سرعت بالا
◀️ اجرای موازی تست ها
◀️ مستندات بسیار خوب
اگه شما از تست نوشتن خوشتون نمیاد، Jest قطعا نظر شما رو عوض میکنه چون استفاده از این فریمورک فوقالعاده آسون و راحته.
برای یادگیری این فریمورک میتونید به داکیومنتش مراجعه کنید.
Document🌕
#testing #jest #framework
@CodeModule
در واقع Jest یک فریمورک تست نویسی جاوااسکریپتی هست که امروزه به طور گستردهای مورد استفاده قرار میگیره. این فریمورک با همه فریمورکهای مدرن جاوا اسکریپت مثل React، Angular، Vue، Node و نظایر اینها سازگاری داره.
این فریمورک در اصل توسط فیسبوک توسعه داده شده و برای جامعه برنامه نویسان جهت استفاده و توسعه متن باز شده است.
وضعیت پرسشنامه سال ۲۰۱۸ جاوااسکریپت نشون میده که Jest محبوبترین و پر استفادهترین فریمورک تستینگ برای جاوااسکریپت بوده و حدود ۳۹٫۶% از توسعه دهنده ها از اون استفاده میکردن.
و همچنین Facebook، Twitter، Airbnb، Instagram، Spotify و بسیاری از استارتاپهای بزرگ، همگی از این فریمورک برای تست محصولاتشون که با جاوااسکریپت نوشته شده، استفاده میکنن.
اگه شما از تست نوشتن خوشتون نمیاد، Jest قطعا نظر شما رو عوض میکنه چون استفاده از این فریمورک فوقالعاده آسون و راحته.
برای یادگیری این فریمورک میتونید به داکیومنتش مراجعه کنید.
Document
#testing #jest #framework
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡6🔥2
بررسی برخی فیچر های جدید جاوا اسکریپت (ES14) ✌️
اکما اسکریپت ۱۴ موجی از ویژگیهای هیجانانگیز و در سال ۲۰۲۳ به نمایش گذاشت تا تجربهی بهتری از برنامه نویسی با جاوا اسکریپت داشته باشید.
تو این پست برخی از متد های جدیدی که به جاوااسکریپت اضافه شده رو بررسی میکنیم.
1⃣ متد findLast
این متد در پروتوتایپ تمامی آرایه ها قابل دسترسی هست (به عنوان مثال Array.prototype.findLast) و به طور مشابه به متد find عمل میکنه و برای یافتن یک عضو در آرایه استفاده میشه. با این تفاوت که جستجو رو از انتهای آرایه شروع میکنه.
2⃣ متد toSorted
این متد نیز مشابه متد sort هست. این دو متد برای مرتبسازی اعضای یک آرایه استفاده میشن، با این تفاوت که متد toSorted آرایه اصلی و تغییر نمیده و خروجی اون یک آرایه جدید از اعضای مرتبشده هست.
3⃣ متد toReversed
این متد نیز مشابه متد reverse عمل میکنه که برای معکوس کردن اعضای یک آرایه استفاده میشود، با این تفاوت که متد toReversed آرایهٔ اصلی و تغییر نمیده، بلکه خروجی اون یک آرایه جدید از اعضای معکوس شده هست.
4⃣ متد with
این متد به ما اجازه میده که یک عضو از آرایه رو با یک مقدار دیگه جایگزین کنیم، بدون اینکه آرایه اصلی و تغییر بدیم. این متد دو ورودی میگیره: ورودی اول که شماره ایندکس مورد نظر برای جایگزینی هست، و ورودی دوم مقدار جدید مورد نظر هست.
5⃣ متد groupBy
با استفاده از متد groupBy، میتونیم اعضای یک آرایه رو بر اساس یک ویژگی مشترک بین آنها گروهبندی کنیم. نکتهای که دربارهی groupBy وجود داره اینه که بر خلاف متدهای بالا، این متد به صورت استاتیک در دسترس، و مستقیماً از شیء Object Global قابل دسترسی هست.
#javascript #es14
@CodeModule
اکما اسکریپت ۱۴ موجی از ویژگیهای هیجانانگیز و در سال ۲۰۲۳ به نمایش گذاشت تا تجربهی بهتری از برنامه نویسی با جاوا اسکریپت داشته باشید.
تو این پست برخی از متد های جدیدی که به جاوااسکریپت اضافه شده رو بررسی میکنیم.
این متد در پروتوتایپ تمامی آرایه ها قابل دسترسی هست (به عنوان مثال Array.prototype.findLast) و به طور مشابه به متد find عمل میکنه و برای یافتن یک عضو در آرایه استفاده میشه. با این تفاوت که جستجو رو از انتهای آرایه شروع میکنه.
const array1 = [5, 12, 50, 100, 44];const found = array1.findLast((element) => element > 45);
console.log(found);//Output: 100
این متد نیز مشابه متد sort هست. این دو متد برای مرتبسازی اعضای یک آرایه استفاده میشن، با این تفاوت که متد toSorted آرایه اصلی و تغییر نمیده و خروجی اون یک آرایه جدید از اعضای مرتبشده هست.
const sortedNumbers = numbers.toSorted((a, b) => a - b)
console.log(sortedNumbers) // Output: [1, 2, 3, 4, 5]
// common mistake using numbers
const nums2 = [0, 15, 5, 10, 20]
const sortedNums2 = nums2.toSorted()
console.log(sortedNums2) // Output: [0, 10, 15, 20, 5]
این متد نیز مشابه متد reverse عمل میکنه که برای معکوس کردن اعضای یک آرایه استفاده میشود، با این تفاوت که متد toReversed آرایهٔ اصلی و تغییر نمیده، بلکه خروجی اون یک آرایه جدید از اعضای معکوس شده هست.
const originalArray = [1, 2, 3, 4, 5];
// toReversed
const newArray = originalArray.toReversed();
console.log(originalArray); // Output: [1, 2, 3, 4, 5] the array is unmodified
console.log(newArray); // Output:[5, 4, 3, 2, 1]
این متد به ما اجازه میده که یک عضو از آرایه رو با یک مقدار دیگه جایگزین کنیم، بدون اینکه آرایه اصلی و تغییر بدیم. این متد دو ورودی میگیره: ورودی اول که شماره ایندکس مورد نظر برای جایگزینی هست، و ورودی دوم مقدار جدید مورد نظر هست.
const numbers = [1, 2, 9999, 4];
const result = numbers.with(2, 3);
console.log(result); // [1, 2, 3, 4]
با استفاده از متد groupBy، میتونیم اعضای یک آرایه رو بر اساس یک ویژگی مشترک بین آنها گروهبندی کنیم. نکتهای که دربارهی groupBy وجود داره اینه که بر خلاف متدهای بالا، این متد به صورت استاتیک در دسترس، و مستقیماً از شیء Object Global قابل دسترسی هست.
const inventory = [
{ name: "asparagus", type: "vegetables", quantity: 5 },
{ name: "bananas", type: "fruit", quantity: 0 },
{ name: "goat", type: "meat", quantity: 23 },
]
function myCallback({ quantity }) {
return quantity > 5 ? "ok" : "restock"
}
const result2 = Object.groupBy(inventory, myCallback);
#javascript #es14
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5⚡3❤🔥2👌2
Good Night 🌚 ✨
" سورسکد مثل لطیفه (جوک) میمونه؛ اگه مجبور به توضیحش شدید، بدونید که اصلاً خوب نوشته نشده. "
@CodeModule
" سورسکد مثل لطیفه (جوک) میمونه؛ اگه مجبور به توضیحش شدید، بدونید که اصلاً خوب نوشته نشده. "
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11👌5
لیستی از بهترین ربات های هوش مصنوعی، که میتونید باهاشون تعامل داشته باشید 🔥
🔵 @littleb_gptBOT
🔵 @gpt3_unlim_chatbot
🔵 @JWGPT3_bot
🔵 @gpt4bot
🔵 @GPT4Telegrambot
🔵 @GPT4Tbot
🔵 @BuddyGPTBot
🔵 @chista_ai_bot
#ai
@CodeModule
#ai
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8⚡4❤🔥2