مقایسه JavaScript

مقایسه و عملگرهای منطقی برای تست true یا false

عملگرهای مقایسه‌ای

عملگرهای مقایسه‌ای در عبارات منطقی استفاده می‌شوند تا مشخص شود آیا متغیرها یا مقادیر برابر هستند یا خیر.

ما x = 5 را تعیین می‌کنیم و جدول زیر توضیح می‌دهد که عملگرهای مقایسه‌ای چگونه عمل می‌کنند:

عملگر توضیح مقایسه بازگشت آزمایش
== برابر است x == 8 false آزمایش کنید
x == 5 true آزمایش کنید
x == "5" true آزمایش کنید
=== مقدارها و نوع‌ها برابر هستند x === 5 true آزمایش کنید
x === "5" false آزمایش کنید
!= نا برابر x != 8 true آزمایش کنید
!== مقدارها یا نوع‌ها متفاوت هستند x !== 5 false آزمایش کنید
x !== "5" true آزمایش کنید
x !== 8 true آزمایش کنید
> > بیشتر از false آزمایش کنید
< کمتر از x < 8 true آزمایش کنید
>= بیشتر یا برابر با x >= 8 false آزمایش کنید
<= کمتر یا برابر با x <= 8 true آزمایش کنید

نحوه استفاده از

عملگرهای مقایسه‌ای می‌توانند در دستورات شرطی برای مقایسه مقادیر استفاده شوند و بر اساس نتیجه اقدامات لازم انجام شوند:

if (age < 18) text = "خیلی جوان";

در بخش‌های بعدی این درس، شما دانش بیشتری در مورد دستورات شرطی خواهید آموخت.

عملگرهای منطقی

عملگرهای منطقی برای ارزیابی منطق بین متغیرها یا مقادیر استفاده می‌شوند.

ما x = 6 و y = 3 را تعیین می‌کنیم و جدول زیر توضیح می‌دهد که عملگرهای منطقی چگونه عمل می‌کنند:

عملگر توضیح مثال آزمایش
&& و (x < 10 && y > 1) به حقیقت خواهد بود آزمایش کنید
|| یا (x == 5 || y == 5) به درستی نیست آزمایش کنید
! متناقض !(x == y) به حقیقت خواهد بود آزمایش کنید

عملگر شرطی (سه‌گانه)

JavaScript نیز شامل عملگرهای شرطی است که می‌توانند بر اساس برخی شرایط به متغیرها ارزشی اختصاص دهند.

نحوه نوشتن

نام متغیر = (شرط) ? value1:value2

مثال

var voteable = (age < 18) ? "خیلی جوان" : "کافی بزرگسال";

آزمایش کنید

اگر مقدار متغیر age کمتر از 18 باشد، مقدار متغیر voteable به "خیلی جوان" خواهد بود، در غیر این صورت مقدار متغیر voteable به "کافی بزرگسال" خواهد بود.

مقایسه داده‌های مختلف

مقایسه داده‌های مختلف ممکن است نتایج غیرمنتظره‌ای داشته باشد.

اگر یک رشته را با عدد مقایسه کنید، JavaScript در زمان مقایسه رشته را به عدد تبدیل می‌کند. رشته خالی به 0 تبدیل می‌شود. رشته‌های غیر数值ی به مقدار همیشه false ، NaN

مثال مقدار آزمایش
2 < 12 true آزمایش کنید
2 < "12" true آزمایش کنید
2 < "Bill" false آزمایش کنید
2 > "Bill" false آزمایش کنید
2 == "Bill" false آزمایش کنید
"2" < "12" false آزمایش کنید
"2" > "12" true آزمایش کنید
"2" == "12" false آزمایش کنید

وقتی دو رشته را مقایسه می‌کنیم، "2" بزرگتر از "12" است، زیرا (بر اساس مرتبه الفبا) 1 کوچکتر از 2 است.

برای اطمینان از نتایج صحیح، باید متغیر را قبل از مقایسه به نوع مناسب تبدیل کرد:

age = Number(age);
if (isNaN(age)) {
    voteable = "خطای ورودی";
}
    voteable = (age < 18) ? "خیلی جوان" : "بسیار بزرگسال";
} 

آزمایش کنید