فارسی
باز کردن در Telegram

پست اول از همه بگم که

22 ژوئیه 2024
T
The javascript
پاسخ( [] == [] )// false ( 0 == [] )// true console.log([]==![]) // true چرا فالسه؟ چرا تروعه ضد نقضیه
اول از همه بگم که [] یا {} یک مقدار falsy نیست این خط کد زیر وارد بلوک ایف میشه let arr = []; if (arr) { alert('true'); } ولی اگ همین شرطو با == یا arr.length چک کنی نتیجه false میشه و وارد بلوک ایف نمیشه مقایسه اولی جفتشون ارایه هستن و توی جاوا اسکریپت شی حساب میشن و مقدار اصلی(Primitive ) نیستن و رفرنس تایپ حساب میشن رفرنسشون یکی نیست بر اساس رفرنسشون مقایسه میشن (اطلاعات تکمیلی در آینده) مقایسه دومی وقتی دوتا مقدار از نوع متقاوت رو با عملگر == برسی میکنی توسط این عملگر تبدیل میشن به نوع نامبر اینجا یه مقدار اصلی داریم و یک شی ک اینجا شی تبدیل میشه به مقدار اصلی و بعد به رشته خالی تبدیل میشه و رشته خالی تبدیل میشه به 0 و 0== 0 ترو هستش مقایسه سومی یکم گیج کننده به نظر میرسه عملگر یگانه ! الویت بالاتری داره پس اول [] تبدیل میشه به یک مقدار بولی و false اش میکنه باز چون دو نوع متفاوت حساب میشن ارایه سمت چپ تبدیل به رشته خالی و 0 میشه و در نهایت نتیجه true هستش
5 · 1.8K ·

در همان حوالی فید

TThe javascriptتو چنل جوین باشید از چند وقت دیگه آموزش های ویدیویی متنی و کوییز اینا میزاریم اگه کد جاوا اسکریپتی دارید که نحوه کارکردش اطلاع ندارید برای ما بفرسید برسی میکنیمTThe javascript( [] == [] )// false ( 0 == [] )// true console.log([]==![]) // true چرا فالسه؟ چرا تروعه ضد نقضیه
این پیام
TThe javascriptconst arr = [1, 2, 3]; arr[-1] = 0; console.log(arr.length)TThe javascriptنظرسنجی
TThe javascriptThe javascript@Thejavascript · کانال
441مشترک11پست در ایندکس
فید انجمن باز کردن در Telegram

فید عمومی باز از ایندکس جست‌وجو ChatCrawler — «Google برای Telegram عمومی»؛ با خزش انجمن به‌روز می‌شود. زمان‌ها به UTC است.

فقط محتوای عمومی، API رسمی Telegram. دربارهٔ ما · پرسش‌ها · محدودیت‌های ایندکس · حذف یک صفحه · کاتالوگ · جست‌وجو · روش محاسبهٔ ما