‎‎مقايسه وعملگرهاي منطقيJavascript Comparison ana logical Opeators -‎

Previous >    <Next  

‎مقايسه وعملگرهاي منطقي براي بررسي‎true‎ ‎يا‎false‎ ‎مورد استفاده قرار ميگيرند.

‎‎عملگرهاي منطقيComparison Operators -‎

‎عملگرهاي مقايسه اي‎(Comparison Operators)‎ براي تعين تساوى، يا اختلاف مابين ‎متغيرها يا مقادير در دستورات منطقي‎(logical statements)‎ مورد ‎استفاده قرارميگيرند.

‎‎فرض كنيد‎x=5 ‎باشد، جدول زير عملگرهاي مقايسه اي را تشريح ميكند.

‎‎عملگر ‎‎شرح ‎‎مقايسه نمودن ‎‎نتيجه ‎‎تلاش دراجرا
‎‎==‎‎ ‎‎مساوي با ‎x==8‎
x==5
x=="5"
‎false
false
true‎
‎‎

‎‎
=== ‎‎نوع داده ومقدار مساوي ‎x===5
x==="5"
‎true
false
‎‎
!= ‎‎نامساوي ‎x!=8 ‎true ‎‎
‎‎!==‎‎ ‎‎نامساوي مقداريا نوع داده ‎x!==5
x!=="5"
x!==8
‎false
true
true
‎‎

‎> ‎‎بزرگتراز ‎x>8‎ ‎false‎ ‎‎
‎<‎ ‎‎كوچكتراز ‎x<8‎ ‎true‎ ‎‎
‎>=‎ ‎‎بزرگتر يا مساوي از ‎x>=8‎ ‎false‎ ‎‎
‎<=‎ ‎‎كوچكتر يا مساوي از ‎x<=8‎ ‎true‎ ‎‎

‎‎چگونه ازآنها استفاده كنيمHow Can it be Used -‎

‎عملگرهاي مقايسه اي مي توانند در دستورات شرطي براي مقايسه مقادير واقدام براساس نتيجه بكار ‎گرفته شوند .نمونه زير:

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

‎‎در فصل بعدي مطالب جامعتري در ارتباط با دستورات شرطي مطرح ميشود.

‎‎عملگرهاي منطقيLogical Operators -‎

‎‎عملگرهاي منطقي براي ايجاد ارتباط منطقي بين متغيرها يا مقادير استفاده ميشوند.

‎در جدول زير باتوجه باينكه‎x=6‎ و‎y=3 ‎ ‎منظور ميشوند، عملكرهاي منطقي تشريح ميگردند.

‎‎عملگر ‎‎شــرح ‎‎مثال ‎‎نتيجه ‎‎تلاش در اجرا
‎&&‎ ‎and‎ ‎(x<10 && y>1) ‎true‎ ‎‎
‎||‎ ‎or‎ ‎(x==5 || y==5)‎ ‎false‎ ‎‎
‎!‎ ‎not‎ ‎!‎(x==y) ‎‎ ‎true‎ ‎‎

‎‎عملگر شرطي سه تائيConditional (Ternary) Operator -‎

‎‎جاوااسكريپت داراي يك عملگر شرطي است، كه براساس بعضي شرايط مقداري را به متغير نسبت ميدهد.

‎‎فرم كلي استفادهSyntax -‎

variablename=(condition) ?value1:valu2

‎‎مثال ـ عملگر‎?

let voteable = (age < 18) ? "Too young":"Old enough"; 

--(go to editor for change code and run)

‎در مثال فوق اگرage<18 باشد مقدار متغيرvoteable برابر ‎"Too young‎"‎ميشود، در غيراينحالت ‎"Old enough‎"‎خواهد بود. .

‎‎مقايسه نوع داده هاي مختلفComparing Different Types -‎

‎‎مقايسه داده ها با نوع هاي مختلف نتايجي دور از انتظار ايجاد ميكند.

‎هنگاميكه رشته اي در عبارت مقايسه با عددي باشد، رشته ابتدا به عدد تبديل ميگردد .يك رشته تهي ‎به صفر تبديل ميشود .رشته غير عددي به‎NaN‎ تبديل ميگردد، كه در شرط ‎باعدد نتيجه‎false‎پيدا ميكند.

‎‎در جدول زير موارد را ملاحظه ميكنيد.

‎‎عبارت شرطي ‎‎نتيجه ‎‎تلاش در اجرا
‎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‎"‎ مقايسه مي شوند، مقايسه الفابتي است درنتيجه ‎‎"2‎">‎"12‎"‎‎است ..

‎‎براي اطمينان درنتيجه مقايسه ، ابتدا متغيرها بايد بطور مناسبي تبديل گردد.

age = Number(age);
if  (isNaN(age)) {
  voteable = "Input is not a number";
} else {
  voteable = (age < 18) ? "Too young" : "Old enough";
}

--(go to editor for change code and run)

The Nullish Coalescing Operator (??)

‎عملگر‎??‎درصورتيكه اولين آرگومان null يا undefined باشد، خودش ‎برگشت ميشود، درغيراينحالت آرگومان دوم برگشت ميشود.

‎‎مثال

let name = null;
let text = "missing";
let result = name ?? text;

--(go to editor for change code and run)

‎‎عملگرnullish توسط همه مرورگرها ازمارس‎2020‎ پشتيباني ميشود.

‎‎پشتيباني مرورگرBrowser Support -‎

Chorome Edge Firefox Safari Opera
‎80
Feb 2020‎
‎80
Feb 2020‎
‎72
Jan 2020‎
‎13.1
Mar 2020‎
‎67
Mar 2020‎

‎‎The Optinal Chaining Opterator (?.‎)‎

‎عملگرundefined ‎ ?.‎برگشت ميدهد، اگر يك شئ null يا nudefined ‎باشد، بجاي اينكه خطائي صادر شود.

‎‎مثال ـ عملگر‎?.

// Create an object:
const car = {type:"Fiat", model:"500", color:"white"};
// Ask for car name:
document.getElementById("demo").innerHTML = car?.name;

--(go to editor for change code and run)


Previous >    <Next