StructuredClone
کپی عمیق و ایمن اشیا:
✔️ سریعتر و امنتر از JSON.parse(JSON.stringify).
#JavaScript #StructuredClone #DeepCopy
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
کپی عمیق و ایمن اشیا:
let obj = { a: 1, b: { c: 2 } };
let clone = structuredClone(obj);
clone.b.c = 99;
console.log(obj.b.c); // 2#JavaScript #StructuredClone #DeepCopy
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
Please open Telegram to view this post
VIEW IN TELEGRAM
Page Visibility API
تشخیص وقتی کاربر تب رو ترک یا برمیگرده:
✔️ برای توقف و ادامه پخش ویدیو یا انیمیشن.
#JavaScript #PageVisibilityAPI #UserExperience
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
تشخیص وقتی کاربر تب رو ترک یا برمیگرده:
document.addEventListener("visibilitychange", () => {
if(document.hidden) console.log("کاربر رفت");
else console.log("کاربر برگشت");
});#JavaScript #PageVisibilityAPI #UserExperience
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
Please open Telegram to view this post
VIEW IN TELEGRAM
Web Workers
اجرای کد در یک Thread جدا بدون کند کردن UI:
✔️ عالی برای محاسبات سنگین بدون فریز شدن صفحه.
#JavaScript #WebWorkers #Performance
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
اجرای کد در یک Thread جدا بدون کند کردن UI:
// worker.js
self.onmessage = e => {
let result = e.data * 2;
postMessage(result);
};
// main.js
let worker = new Worker('worker.js');
worker.postMessage(5);
worker.onmessage = e => console.log(e.data); // 10
#JavaScript #WebWorkers #Performance
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
Please open Telegram to view this post
VIEW IN TELEGRAM
وقتی پروژه سنگینه، تقسیمش کن بین چند نفر… یا چند Thread 😉
#Motivation #ProgrammingLife
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
#Motivation #ProgrammingLife
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
Streams API
خواندن دادهها تکهتکه به جای یکجا:
✔️ برای مدیریت فایلهای بزرگ بدون فشار به حافظه.
#JavaScript #StreamsAPI #Optimization
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
خواندن دادهها تکهتکه به جای یکجا:
fetch('/bigfile.txt')
.then(res => res.body.getReader())
.then(reader => reader.read().then(console.log));#JavaScript #StreamsAPI #Optimization
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
Please open Telegram to view this post
VIEW IN TELEGRAM
SharedArrayBuffer
اشتراک حافظه بین Threadها:
✔️ برای پروژههای با نیاز به هماهنگی دادهها.
#JavaScript #SharedArrayBuffer #Concurrency
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
اشتراک حافظه بین Threadها:
let buffer = new SharedArrayBuffer(1024);
let arr = new Int32Array(buffer);
arr[0] = 42;
#JavaScript #SharedArrayBuffer #Concurrency
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
Please open Telegram to view this post
VIEW IN TELEGRAM
قدمبهقدم حرکت کن؛ حتی طولانیترین مسیرها با اولین بایت شروع میشه.
#Motivation #CodingMindset
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
#Motivation #CodingMindset
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
BroadcastChannel
ارتباط بین تبهای مختلف مرورگر:
✔️ عالی برای همگامسازی دیتا بین تبها.
#JavaScript #BroadcastChannel #WebDev
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
ارتباط بین تبهای مختلف مرورگر:
let bc = new BroadcastChannel('channel_name');
bc.onmessage = e => console.log(e.data);
bc.postMessage('سلام از تب دیگه!');#JavaScript #BroadcastChannel #WebDev
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
Please open Telegram to view this post
VIEW IN TELEGRAM
Navigator.connection
بررسی وضعیت اینترنت کاربر:
✅ برای بهینهسازی لود محتوا در سرعتهای مختلف.
#JavaScript #NetworkAPI #UX
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
بررسی وضعیت اینترنت کاربر:
console.log(navigator.connection.downlink, navigator.connection.effectiveType);
✅ برای بهینهسازی لود محتوا در سرعتهای مختلف.
#JavaScript #NetworkAPI #UX
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
Please open Telegram to view this post
VIEW IN TELEGRAM
بریم سراغ آموزش Optional Chaining که خیلی ساده و پر کاربرده
برای جلوگیری از ارور وقتی آبجکت تو در تو نداره از علامت سوال ( ? ) استفاده میکنیم :
✔️ به جای کلی if پشت سر هم، کد رو تمیزتر میکنه.
#JavaScript #OptionalChaining #CleanCode
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
برای جلوگیری از ارور وقتی آبجکت تو در تو نداره از علامت سوال ( ? ) استفاده میکنیم :
let user = {};
console.log(user?.address?.city); // undefined (بدون ارور)#JavaScript #OptionalChaining #CleanCode
➖➖➖➖➖➖➖➖➖
꧁ channel | group | website ꧂
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
دارم روی یک پروژه pwa کار میکنم که برای شرکته و خیلی سرم شلوغ شده.
اگر با ریکت و نکست کار میکنید سعی کنید حتما روی pwa مسلط بشید.
شرکت ها خیلی بهش نیاز دارن
اگر با ریکت و نکست کار میکنید سعی کنید حتما روی pwa مسلط بشید.
شرکت ها خیلی بهش نیاز دارن
This media is not supported in your browser
VIEW IN TELEGRAM
بچه های فوتبالی یه pwa دیگه داره متولد میشه که کارش ثبت گزارش و پخش زنده و نمایش اطلاعات بازی های فوتبال و سایر ورزش های دیگه هست.
به زودی میاد بالا و خیلی به دوستداران فوتبال کمک میکنه تا در لحظه از اخبار داغ و یا اطلاعات تیم مورد علاقه خودشون با خبر بشن
به زودی میاد بالا و خیلی به دوستداران فوتبال کمک میکنه تا در لحظه از اخبار داغ و یا اطلاعات تیم مورد علاقه خودشون با خبر بشن
Please open Telegram to view this post
VIEW IN TELEGRAM
بهونه نیار، معطل نکن، منتظر معجزه نباش...
هدف توئه که باید براش بجنگی!✊
وقتی بهش برسی، اون حس رضایت و غرور، همۀ سختیهای راه رو برات شیرین میکنه.
بی صدا برو جلو بزار نتایج خودشون حرف بزنن😎
هدف توئه که باید براش بجنگی!✊
وقتی بهش برسی، اون حس رضایت و غرور، همۀ سختیهای راه رو برات شیرین میکنه.
بی صدا برو جلو بزار نتایج خودشون حرف بزنن
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
بعضی ها قبل از شروع فکر میکنن اینجوری js قورت میدن
ولی هر چیزی نیاز به زمان داره و باید تمرین و تکرار داشت.
ولی هر چیزی نیاز به زمان داره و باید تمرین و تکرار داشت.