در جاوا اسکریپت، لاجیکال اساینمت یک روش ساده و خوانا برای تغییر مقادیر در متغیر ها، تغییر یک المنتِ یک آرایه یا ولیویِ پراپرتیِ یک آبجکت و ... است. که باعث سادهتر و قابل فهمتر شدن کد میشود.
این روش به ما این امکان را میدهد تا با استفاده از عملگرهای منطقی، مقادیر متغیرها، ولیوی پراپرتیها، ولیوی یک المنت در آرایه و ... را به صورت مشروط تغییر دهیم. در این تاپیک، به بررسی لاجیکال اساینمت در جاوا اسکریپت میپردازیم و نحوه استفاده از آن با استفاده از آبجکتها را توضیح میدهیم.
لاجیکال اساینمت در جاوا اسکریپت شامل چندین عملگر است که به صورت کوتاه و خوانا میتوانند مقادیر پراپرتیها را تغییر دهند. در ادامه، به توضیح هر یک از این عملگرها خواهیم پرداخت.
برای شروع، آبجکت زیر را در نظر بگیرید:
1. Logical OR Assignment ( ||= )
این عملگر این امکان را میدهد تا مقدار یک پراپرتی، فقط در صورتی تغییر یابد که مقدار آن پراپرتی، null یا undefined باشد.
که در اینجا خروجی کنسول برابر John خواهد بود.
2. Logical AND Assignment ( &&= )
این عملگر این امکان را میدهد تا مقدار یک پراپرتی، فقط در صورتی تغییر یابد که مقدار آن، فالس نباشد.
*** همون طور که میدونیم هر ولیوی ای از نظر منطقی و بولین true هست به جز مقادیر فالس، که شامل : null - undefined - ' ' - 0 - NaN - false هستند.
که در اینجا خروجی کنسول برابر 30 خواهد بود.
3. Logical Nullish Assignment ( ??= )
این عملگر این امکان را میدهد تا مقدار یک پراپرتی، فقط در صورتی تغییر یابد که مقدار آن null یا undefined باشد.
*** برای بخاطر سپاری بهتر، عملگر ؟؟ را برابر OR در نظر بگیر و همه ی مقادیر فالس را به جز null و undefined را true محسوب کن!
از آنجایی که پراپرتی city در آبجکت مورد نظر وجود ندارد پس برابر undefined خواهد بود و در نهایت خروجی کنسول، New York خواهد بود.
سعی کردم مطالبی که بلد بودم رو به شکل قابل فهم توضیح بدم. امیدوارم کمکتون کرده باشه!
اگر نکته ای بود و یا نظری داشتید خیلی خوشحال میشم که حتما حتما حتمااااااا کامنت کنید! (;