اپراتور های مقایسه و منطقی در JavaScript

اپراتورهای مقایسه و منطقی برای تست درست یا غلط بودن استفاده می شود.

اپراتورهای مقایسه

اپراتورهای مقایسه در دستورات منطقی برای تعیین برابری یا تفاوت بین متغیرها یا مقادیر استفاده می شوند.

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

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

چطور میتوانید استفاده کنید؟

اپراتورهای مقایسه را می توان در عبارات شرطی برای مقایسه مقادیر استفاده کرد و اقدامات را بسته به نتیجه انجام داد:

 

if (age < 18) text = "Too young";

شما در مورد استفاده از دستورات شرطی در درس بعدی این آموزش بیشتر آشنا می شوید.

اپراتورهای منطقی

اپراتورهای منطقی برای تعیین منطق بین متغیرها یا مقادیر استفاده می شوند.

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

اپراتور
شرح
مثال
امتحان کنید
&&
and
(x < 10 && y > 1) is true
||
or
(x == 5 || y == 5) is false
!
not
!(x == y) is true

اپراتور شرطی (سه گانه)

جاوا اسکریپت همچنین شامل یک اپراتور شرطی است که یک مقدار را به یک متغیر بر اساس برخی شرایط اختصاص می دهد.

ساختار

variablename = (condition) ? value1:value2

اپراتور شرطی
 var voteable = (age < 18) ? "Too young":"Old enough"; 
مشاهده مثال

اگر سن متغیر یک مقدار کمتر از 18 باشد، ارزش متغیر مورد نظر "Too young"خواهد بود ، در غیر این صورت ارزش قابل قبول "Old enough" خواهد بود.

انواع مختلف مقایسه

مقایسه داده های انواع مختلف ممکن است نتایج غیر منتظره را به دست آورد.

هنگام مقایسه یک رشته با یک عدد، جاوا اسکریپت در هنگام مقایسه، رشته را به عدد تبدیل می کند. یک رشته خالی به 0 تبدیل می شود. یک رشته غیر عددی به NaN تبدیل می شود که همیشه اشتباه است.

مورد
مقدار
مثال
2 < 12
true
2 < "12"
true
2 < "John"
false
2 > "John"
false
2 == "John"
false
"2" < "12"
false
"2" > "12"
true
"2" == "12"
false

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

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

مقایسه شرط
age = Number(age);
if (isNaN(age)) {
    voteable = "Input is not a number";
} else {
    voteable = (age < 18) ? "Too young" : "Old enough";
}
مشاهده مثال

 

نظر شما

لطفا نام و نام خانوادگی خود را وارد کنید
لطفا ایمیل خود را وارد کنید لطفا ایمیل صحیح وارد کنید.
لطفا متن نظر خود را وارد کنید
>

یادگیری JavaScript

مقالات و دروس

به خبرنامه مدرسه طراحی وب ایران (وب مهراز) بپیوندید.

لطفا شماره همراه صحیح وارد کنید.
لطفا ایمیل صحیح وارد کنید.

مقالات مرتبط