رقصنده با کد
782 subscribers
1.69K photos
850 videos
207 files
666 links
Here are some interesting things I've come across during my learning process. That's it. Admin ID:
@alithecodeguy
Download Telegram
اصل هشتم از ده اصل اصلی برای برنامه‌نویس های مجرد
#programming_life @alithecodeguy
اصل نهم از ده اصل اصلی برای برنامه‌نویس های مجرد
#programming_life @alithecodeguy
اصل دهم از ده اصل اصلی برای برنامه‌نویس های مجرد
#programming_life @alithecodeguy
دوره فشرده و پروژه محور فرانت اند ( آنلاین )
طراحی بخشی از سایت دیوار با React

ظرفیت : ۴ نفر
هزینه دوره : ۱.۵ میلیون تومان ( ۲۰ درصد تخفیف با پرداخت رمز ارز )
زمان : ۸ بهمن ۱۴۰۰ ساعت ۱۰ الی ۲۰

موضوعات :
ReactJs , NextJs , TypeScript , ReduxToolkit , TailwindCSS

پیش نیاز :
HTML , CSS , JavaScript

راه ارتباطی :
کانال تلگرامی : https://t.iss.one/alithecodeguy
لینکدین : https://www.linkedin.com/in/alithecodeguy

#course #js #react #javascript #nextjs #redux #tailwind #typescript #programming #frontend #alithecodeguy @alithecodeguy
یکی از وبلاگ‌های جذاب و کمتر شناخته شده توی جاوا اسکریپت اینه:
https://www.robinwieruch.de/
هر سوالی که جای دیگه جوابش پیدا نمیشه ، تهش به اینجا ختم میشه.

#javascript #programming #robinwieruch
راه درست برای چک کردن اینکه آیا یک property واقعا در یک object وجود دارد یا خیر.
#js #javascript #programming #es
جاوااسکریپت عملگری به شکل ~~ نداره.
پس عدد بالا چه اتفاقی براش افتاده که رند شده؟

جواب سوال: چهارشنبه ۱۵ آبان ساعت ۱۳ در کانال رقصنده با کد:
https://t.iss.one/alithecodeguy

#js #javascript #programming
@alithecodeguy
رقصنده با کد
جاوااسکریپت عملگری به شکل ~~ نداره. پس عدد بالا چه اتفاقی براش افتاده که رند شده؟ جواب سوال: چهارشنبه ۱۵ آبان ساعت ۱۳ در کانال رقصنده با کد: https://t.iss.one/alithecodeguy #js #javascript #programming @alithecodeguy
جواب این سوال رو میخواستم فردا بذارم ولی دلم نیومد الان نذارم اذیت نشید. ندونستنش یه دردسره ، دونستنش هزارتا دردسر 😈

دلیل اینکه چرا دو بار “بیت وایز نات” کردن یک عدد اعشاری باعث حذف قسمت اعشاری میشه رو مرحله به مرحله توضیح میدم: (بیت وایز نات همون عملگر ~ هستش که میاد اعداد رو به باینری تبدیل میکنه سپس هر صفر رو بک یک و هر یک رو به صفر تبدیل میکنه.)

۰- بخشی از دلیل این اتفاق ، به ریاضیات و نحوه برخورد کامپیوتر با اعداد مرتبطه و مختص زبان برنامه‌نویسی خاصی نیست. به خاطر همین توی توضیحات کلمه‌های متمم۱ و متمم‌۲ رو خواهید دید که مفهومی ریاضی هستند که دلیل رفتار متمم‌۲ هم خودش به مفهوم ریاضی دیگه‌ای به نام “همنهشتی” مرتبطه.

۱- علامت ~~ در واقع دو تا عملگر ~ هستش که بهش میگن عملگر “بیت وایز نات”. وقتی عملگر “بیت وایز نات” اول رو روی هر عددی انجام بدید (در جاواااسکریپت) ، اون عدد باید به فرم ۳۲ بیتی علامتدار تبدیل بشه پس از همینجا میتونیم متوجه بشیم این عملگر میاد قسمت اعشاری رو کلا حذف میکنه و قسمت صحیح عدد رو هر بیتشو معکوس میکنه (اصطلاحا متمم۱ میگیره).

۲- برای مثال عدد ۵.۳ ابتدا به ۵ تبدیل میشه سپس به فرم باینری زیر درمیاد:
00000000000000000000000000000101
حالا اگر “متمم ۱” ازش بگیریم به شکل زیر درمیاد: (نات کنیم)
11111111111111111111111111111010 (*)
که این عدد تولید شده ، خودش “متمم۲” یک عدد دیگه‌ایه. چرا؟ چون این عدد منفیه (به خاطر اولین بیت سمت چپ که ۱ هستش) حالا این عدد دیگه رو چه جوری محاسبه کنیم؟ یک متمم ۲ دیگه ازش میگیریم. برای اینکار اول میایم متمم ۱ میگیریم :
00000000000000000000000000000101
بعد عدد ۱ رو بهش اضافه می‌کنیم:
00000000000000000000000000000110
که اگر به فرمت دسیمال تبدیلش کنیم عدد ۶ به دست میاد و از اونجا که منفی بود میدونیم پس عدد منفی ۶ رو نشون میداده. ( این عدد منفی ۶ رو محاسبه کردیم که عملگر تنهای ~ رو هم دیده باشیم که چرا ~5.3 = -6 میشه )

۳-حالا وقتی عملگر نات دوم رو دوباره روی عدد باینری (*) بالا پیاده کنیم ، عدد زیر بدست میاد:
00000000000000000000000000000101
که این عدد باینری رو هم اگر به فرم دهدهی تبدیل کنیم ، عدد ۵ بدست میاد.

حالا این کجاش به جاوااسکریپت مرتبط بود؟ 😄

#js #javascript #programming #tip #tricks @alithecodeguy
این یک تکه کد جاوااسکریپت هست که دو فانکشن متفاوت رو با اسم یکسان ایجاد کرده و این فانکشن‌ها رو از طریق این اسم ، یک بار در ایتدای اسکریپت و بار دوم در انتهای اسکریپت صدا زده و هر دفعه فانکشن متفاوتی، کال شده.
عجیبه نه؟ اتفاقا اصلا عجیب نیست وقتی جاوااسکریپت رو بشناسی.
توی دوره عمیق جاوااسکریپت درباره دلیل عمیق و ساختاری همچین موضوعاتی صحبت می‌کنیم.
(بعضی از مطالب از جمله همین تصویر رو ، به صورت شرت یوتیوب در گذر زمان توضیح میدم)

#js #javascript #programming
@alithecodeguy