این مقاله از آقای علی نظری رو به نظرم خوبه که بخونید.
https://ditty.ir/posts/frontend-interview-questions-part-1/nMl85
https://ditty.ir/posts/frontend-interview-questions-part-1/nMl85
دوستانی که از قوانین بیمه مطلع هستید ، سوال دارم از محضرتون.
اگر جایی به شما فرضا ۱۰۰ تومن حقوق بده ولی ۱۰ تومن بیمه رد کنه ، چه مشکلاتی ممکنه بوجود بیاره؟
اگر جایی به شما فرضا ۱۰۰ تومن حقوق بده ولی ۱۰ تومن بیمه رد کنه ، چه مشکلاتی ممکنه بوجود بیاره؟
رنج حقوقی برنامهنویسهای ریکت بر اساس آمار جاب ویژن
@alithecodeguy
@alithecodeguy
نکته ساده و عمیق ریکتی :
it’s the position in the UI tree—not in the JSX markup—that matters to React!
یعنی این که محل قرارگیری کامپوننتها توی دامه که مهمه نه نگارش JSX اون کامپوننت.
به عبارت دیگه توی کد زیر هر چند که کانتر دوبار نوشته شده ولی چون در نهایت چون یک کامپوننت یکسان در موقعیت یکسان نمایش داده شده پس ریکت فکر نمیکنه که یک کامپوننت جدیده و استیتهاش رو نگه میداره :
<div>
{isFancy ? (
<Counter isFancy={true} />
) : (
<Counter isFancy={false} />
)}
<label>
<input
type="checkbox"
checked={isFancy}
onChange={e => {
setIsFancy(e.target.checked)
}}
/>
Use fancy styling
</label>
</div>
اطلاعات بیشتر توی داکیومنت ریکت:
https://react.dev/learn/preserving-and-resetting-state
@alithecodeguy
it’s the position in the UI tree—not in the JSX markup—that matters to React!
یعنی این که محل قرارگیری کامپوننتها توی دامه که مهمه نه نگارش JSX اون کامپوننت.
به عبارت دیگه توی کد زیر هر چند که کانتر دوبار نوشته شده ولی چون در نهایت چون یک کامپوننت یکسان در موقعیت یکسان نمایش داده شده پس ریکت فکر نمیکنه که یک کامپوننت جدیده و استیتهاش رو نگه میداره :
<div>
{isFancy ? (
<Counter isFancy={true} />
) : (
<Counter isFancy={false} />
)}
<label>
<input
type="checkbox"
checked={isFancy}
onChange={e => {
setIsFancy(e.target.checked)
}}
/>
Use fancy styling
</label>
</div>
اطلاعات بیشتر توی داکیومنت ریکت:
https://react.dev/learn/preserving-and-resetting-state
@alithecodeguy
این کد ترکیب debounce , fetch و AbortController هست که از مثالهای آقای نظری برداشتم. اگر تازه برنامهنویسی وب رو شروع کردید یا با این عبارات آشنا نیستید ، پیشنهاد میکنم زمان بذارید و این کد رو مطالعه کنید.
لینک:
https://ditty.ir/posts/javanoscript-abortcontroller/nBwbX
@alithecodeguy #tip #abort #debounce
لینک:
https://ditty.ir/posts/javanoscript-abortcontroller/nBwbX
@alithecodeguy #tip #abort #debounce
میدونیم که استیت آپدیتها توی ریکت آسینک هستن. یعنی نمیتونیم مطمن باشیم که چه زمانی انجام میشن. به عبارت دیگه اگر دو خط کد بزنید که یکیش استیت آپدیت باشه نمیتونید مطمن بشید که کدوم خط اول انجام میشه.
اگر میخواید که این موضوع رو هندل کنید و فرآیند اجرای کد رو منتظر نگه دارید تا استیت آپدیت مدنظرتون تموم بشه میتونید از
flushSync
استفاده کنید.
نکته : چیزی نیست که بخواید در حالت معمول استفاده کنید و تا جایی که میشه ازش استفاده نکنید.
#tip #react #js @alithecodeguy
اگر میخواید که این موضوع رو هندل کنید و فرآیند اجرای کد رو منتظر نگه دارید تا استیت آپدیت مدنظرتون تموم بشه میتونید از
flushSync
استفاده کنید.
نکته : چیزی نیست که بخواید در حالت معمول استفاده کنید و تا جایی که میشه ازش استفاده نکنید.
#tip #react #js @alithecodeguy
یکی از سوالات نکتهدار جاوااسکریپتیای که معمولا توی مصاحبههای فنی میبینید.
چندتا نکته همزمان وجود داره.
#interview #tip #js
@alithecodeguy
چندتا نکته همزمان وجود داره.
#interview #tip #js
@alithecodeguy
اگر روی یوتیوب ویدیوهای آموزشی میبینید ، این کانال خوبیه:
https://www.youtube.com/@ConnerArdman
#youtube
https://www.youtube.com/@ConnerArdman
#youtube
نکته جاوااسکریپتی:
همیشه حواستون به binded object باشه.
(کلک مرغابی : اگر جایی به کدتون شک کردید ، جداگونه تستش کنید مطمن بشید عملکرد مدنظرتون رو برای همه حالتهایی ممکن انجام میده.)
#js #tip #interview
@alithecodeguy
همیشه حواستون به binded object باشه.
(کلک مرغابی : اگر جایی به کدتون شک کردید ، جداگونه تستش کنید مطمن بشید عملکرد مدنظرتون رو برای همه حالتهایی ممکن انجام میده.)
#js #tip #interview
@alithecodeguy
توی جاوااسکریپت با کم کردن عدد length به راحتی میتونید یک آرایه رو تکه کنید. فقط حواستون باشه بهتره از این روش استفاده نکنید و از روشهای معمولتر مثل slice و splice استفاده کنید.
#js #interview #tip
@alithecodeguy
#js #interview #tip
@alithecodeguy
توی جاوا اسکریپت موقعی که جلوی عملگر انتساب از پرانتز استفاده کنید ، همیشنه آخرین مقدار منتسب میشه.
#js #tip #interview
@alithecodeguy
#js #tip #interview
@alithecodeguy
موقع استفاده از promiseها توی جاوا اسکریپت اگر از تصویرسازی ذهنی استفاده کنید ، بهتر میتونید فرآیندها رو دنبال کنید.
#js #tip #interview
@alithecodeguy
#js #tip #interview
@alithecodeguy
دوره ریکت مقدماتی با موفقیت به پایان رسید. دوره خوبی شد. ممنون از همه دوستانی که افتخار دادن شرکت کردن 🙏
دوره جاوا اسکریپت احتمالا از دو هفته دیگه شروع میشه. همینجا اطلاعرسانی میکنم.
دوره جاوا اسکریپت احتمالا از دو هفته دیگه شروع میشه. همینجا اطلاعرسانی میکنم.
در حال تدوین سرفصلهای دوره مقدماتی جاوااسکریپت هستم ولی قصد ندارم مشابه خیلی دورههای دیگه مطالبی توش باشه که اصلا استفاده نمیشه و میخوام کاملا کاربردی باشه.
هرگونه پیشنهادی دارید ازش استقبال میکنم. مثلا اینکه چه چیزی خیلی زیاد استفاده کردید یا چیا رو دیدید که اصلا ازش خبر نداشتید یا چه چیزی رو اگر بهتر متوجه میشدید راحتتر بودید. البته قرار نیست فقط همین چیزا باشه و سرفصلهای اصلی مشخصه.
هرگونه پیشنهادی دارید ازش استقبال میکنم. مثلا اینکه چه چیزی خیلی زیاد استفاده کردید یا چیا رو دیدید که اصلا ازش خبر نداشتید یا چه چیزی رو اگر بهتر متوجه میشدید راحتتر بودید. البته قرار نیست فقط همین چیزا باشه و سرفصلهای اصلی مشخصه.
یه پستی گذاشته بودم در مورد اینکه با تغییر سایز یک آرایه میشه فقط ایندکس صفر اون رو نگه داشت و بقیه رو حذف کرد. یکی از دوستان سوال پرسید که خب این روش به چه دردی میخوره. توی تصاویر ، با آرایههای مختلف و درمحیطهای مختلف دو روش مختلف رو تست کردم و زمان اجرای کد رو محاسبه کردیم.
میبینیم که هیچ نسخه کلیای وجود نداره و بهتره ابزاری رو استفاده کنید که با شرایط کدتون سازگار باشه.
#js #tip @alithecodeguy
میبینیم که هیچ نسخه کلیای وجود نداره و بهتره ابزاری رو استفاده کنید که با شرایط کدتون سازگار باشه.
#js #tip @alithecodeguy