من میدانم که هیچ نمیدانم.
اتصال کوتاه (Short Circuiting) با عملگر منطقی Nullish coalescing (??) در جاوااسکریپت

این عملگر (نالیش کُولِسینگ) که به صورت دو علامت سوال کنار هم ?? هست، وقتی بین دو مقدار قرار بگیره، اولین مقداری رو برمیگردونه که null یا undefined نباشه. در مقایسه با عملگر Logical OR، برای این عملگر فقط null یا undefined بودن مقدارها مهم هست، نه falsy بودن اونها:
0 ?? "Hello" // 0
false ?? "Hello" // false
"" ?? "Hello" // ""
null ?? "Hello" // "Hello"
undefined ?? "Hello" // "Hello"برای سه مورد اول، اگه از عملگر Logical OR استفاده میکردیم، مقدارهای سمت راست درنظر گرفته میشد.
عملگر Logical Nullish Assignment
این عملگر به شکل ??= هست و برای نسبتدادن مقدار به یک متغیر استفاده میشه.
اگر کدی داریم به صورت زیر:
let x = null;
if (x === null || x === undefined) {
x = 12;
}میتونیم اون رو به این صورت بنویسیم:
let x = null;
x ??= 12;
alert(x); // 12کد بالا تنها زمانی مقدار 12 رو به x نسبت میده که x یک مقدار nullish باشه (یعنی null یا undefined). به بیان کلیتر، عملیاتِ نسبت دادن به عبارت سمت چپ زمانی انجام میگیره که عبارت سمت چپ null یا undefined باشه.
Resources:
مطلبی دیگر از این انتشارات
تفاوت لجر نانو ایکس و نانو اس پلاس
مطلبی دیگر از این انتشارات
راه حلی برای رفع مشکل مقیاس پذیری در شبکه بیت کوین
مطلبی دیگر از این انتشارات
?آشنایی با سازوکار سکوی تأمین مالی جمعی ققنوس?