عملگرهای منطقی و مقایسه‌ای در جاوااسکریپت

از ویکی کد
پرش به ناوبری پرش به جستجو
دورهٔ آموزشی جاوااسکریپت
Javascript.jpg
جاوااسکریپت
موارد آموزشی
۱آموزش جاوااسکریپت
۲مقدمه‌ای بر جاوااسکریپت
۳قوانین و اصول اولیه زبان جاوااسکریپت
۴خروجی جاوااسکریپت
۵عبارت‌ها در جاوااسکریپت
۶شیوهٔ نوشتن دستورات در جاوااسکریپت
۷نظرات یا کامنت‌ها (Comments) در جاوااسکریپت
۸متغیرها در جاوااسکریپت
۹عملگرهای جاوااسکریپت
۱۰عملگرهای ریاضی در جاوااسکریپت
۱۱عملگرهای مقداردهی در جاوااسکریپت
۱۲انواع داده‌ها در جاوااسکریپت
۱۳توابع در جاوااسکریپت
۱۴اشیاء (object) در جاوااسکریپت
۱۵رویدادها در جاوااسکریپت
۱۶رشته‌های متنی (string) در جاوااسکریپت
۱۷متدهای نوع داده متنی یا رشته‌ای در جاوااسکریپت
۱۸اعداد در جاوااسکریپت
۱۹متدهای داده‌های عددی در جاوااسکریپت
۲۰آرایه‌ها در جاوااسکریپت
۲۱متدهای آرایه در جاوااسکریپت
۲۲مرتب‌سازی آرایه‌ها در جاوااسکریپت
۲۳متدهای پیمایش آرایه در جاوااسکریپت
۲۴اشیاء تاریخ و زمان در جاوااسکریپت
۲۵فرمت‌های تاریخ و زمان در جاوااسکریپت
۲۶متدهای دریافت تاریخ و زمان در جاوااسکریپت
۲۷متدهای تنظیم زمان و تاریخ در جاوااسکریپت
۲۸شی ریاضی (Math) در جاوااسکریپت
۲۹ایجاد عدد تصادفی در جاوااسکریپت
۳۰مقادیر بولین (Booleans) در جاوااسکریپت
۳۱عملگرهای منطقی و مقایسه‌ای در جاوااسکریپت
۳۲ساختار if else و else if در جاوااسکریپت
۳۳تکه کد Switch در جاوا اسکریپت
۳۴حلقه For در جاوااسکریپت
۳۵حلقه While در جاوااسکریپت
۳۶کلمات کلیدی Break و Continue در جاوااسکریپت
۳۷تبدیل نوع داده‌ها در جاوااسکریپت
۳۸عملیات‌های بیتی در جاوااسکریپت
۳۹عبارات با قاعده در جاوااسکریپت
۴۰خطاها در جاوااسکریپت - رخ دادن خطا و رفع آن
۴۱Scope در جاوااسکریپت
۴۲Hoisting یا جا به جایی کدها در جاوااسکریپت
۴۳استفاده از مد یا حالت سخت‌گیرانه (use strict) در جاوااسکریپت
۴۴کلمه کلیدی This در جاوااسکریپت
۴۵کلمه کلیدی Let در جاوااسکریپت
۴۶ثابت‌ها در جاوااسکریپت
۴۷تعریف توابع به صورت پیکان
۴۸کلاس‌ها در جاوااسکریپت
۴۹اشکال‌زدایی در جاوااسکریپت
۵۰راهنمای استایل و استانداردهای کدنویسی در جاوااسکریپت
۵۱بهترین تمرینات جاوااسکریپت
۵۲اشتباهات رایج در برنامه‌نویسی جاوااسکریپت
۵۳کارایی در جاوااسکریپت
۵۴کلمات رزرو شده در جاوااسکریپت
۵۵ورژن‌های جاوااسکریپت
۵۶ECMAScript 5 - JavaScript 5
۵۷ECMAScript 6 - ECMAScript 2015
۵۸جیسون (JSON) در جاوااسکریپت
فرم‌ها
۱فرم‌ها در جاوااسکریپت
۲API ارزشیابی در جاوااسکریپت
اشیاء (Object)
۱اشیاء در جاوااسکریپت
۲ویژگی‌های اشیاء در جاوااسکریپت
۳متدهای اشیاء در جاوااسکریپت
۴روش‌های دسترسی به شیء در جاوااسکریپت
۵سازنده‌های شیء در جاوااسکریپت
۶شکل اصلی شیء در جاوااسکریپت
۷متدهای شیء در ورژن ES5 جاوااسکریپت
تابع
۱تعریف تابع در جاوااسکریپت
۲پارامتر توابع در جاوااسکریپت
۳فراخوانی تابع در جاوااسکریپت
۴صدا کردن تابع در جاوااسکریپت
۵تابع Apply در جاوااسکریپت
۶بسته‌ها (به انگلیسی: Closures) در جاوااسکریپت
HTML DOM
۱HTML DOM در جاوااسکریپت
۲متدهای HTML DOM در جاوااسکریپت
۳HTML DOM Document در جاوااسکریپت
۴عناصر HTML DOM در جاوااسکریپت
۵reeeeeeeeeeeeeeee
۶تست
۷تست
۸تست
۹تست
۱۰تست
۱۱تست
۱۲تست
۱۳تست

عملگرهای مقایسه ای و منطقی برای بررسی کردن مقدار True یا False استفاده می‌شود. [۱]

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

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

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

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

چگونه از این عملگرها می‌توان استفاده کرد

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

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

شما در فصل بعدی این آموزش مطالب بیشتری را در مورد شیوه استفاده از جملات شرطی در جاوااسکریپت خواهید آموخت.

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

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

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

عملگر توضیحات مثال امتحان کنید
&& And (به فارسی: واو عطف) ​(x < 10 && y > 1)​برابر با True است. Try it
|| or (به فارسی: یا) ​(x == 5​برابر با False است. Try it
! نقیض ​!(x == y)​برابر با True است. Try it

عملگر شرطی در جاوااسکریپت

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

شیوهٔ نوشتار

variablename = (condition) ? value1:value2

مثال

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

اگر متغیر Age دارای مقداری زیر ۱۸ باشد، مقدار متغیر voteable برابر با عبارت "too young " خواهد بود، در حالی که اگر اینچنین نباشد، مقدار متغیر Voteable برابر با عبارت "old enough" خواهد بود.

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

مقایسهٔ نوع داده‌های مختلف ممکن است موجب بروز نتایج ناخواسته شود.

زمانی که یک مقدار رشته‌ای (به انگلیسی: String) را با یک مقدار عددی مقایسه می‌کنیم، جاوااسکریپت مقدار رشته‌ای (به انگلیسی: String) را هنگام انجام مقایسه به نوع عددی تبدیل می‌کند.

مقدار رشته‌ای خالی به عدد صفر تبدیل می‌شود. یک رشته متنی شامل مقدار غیر عددی به مقدار​NaN​تبدیل می‌شود که همیشه برابر با مقدار​False​است.


مقایسه نتیجه امتحان کنید
​2 < 12​ True Try it
​2 < "12"​ True Try it
​2 < "John"​ False Try it
​2 > "John"​ False Try it
​2 == "John"​ False Try it
​"2" < "12"​ False Try it
​"2" > "12"​ True Try it
​"2" == "12"​ False Try it

زمانی که دو رشته را با یک دیگر مقایسه می‌کنیم، "۲" از "۱۲" بزرگتر خواهد بود، زیرا (بر اساس حروف الفبا) ۱ کوچکتر از ۱۲ است.

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

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

منابع آموزشی