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

تاریخ ارسال : سه شنبه, ۱۱ مرداد , ۱۴۰۱

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

در جاوا اسکریپت برای انجام عملیات بر روی یک یا چند مقدار میتوان از عملگر ها استفاده کرد. برای مثال اعمال جمع و ضرب عملیات های ریاضی هستند که با استفاده از عملگر + و * انجام میشوند.

عملگر نمادی است که یک عمل خاصی را انجام می دهد. در زبان جاوا اسکریپت، برای انجام عملیات های محاسباتی از عملگرها استفاده می کنیم. عملگرهای جاوا اسکریپت و کاربرد آنها در زیر باذکر مثال هایی توضیح داده شده است.

let a = 1;         // مقدار 1 را به متغیر انتساب می دهد
let b = 2;         // مقدار 2 را به متغیر انتساب می دهد
let c = a + b;     // عمل جمع را انجام داده و مقدار 3 را درون متغیر جدید قرار می دهد

در زبان جاوا اسکریپت (Javascript)، عملگر جمع (+)، اعداد را جمع می کند.

let a = 1;         // مقدار 1 را به متغیر انتساب می دهد
let b = 2;         // مقدار 2 را به متغیر انتساب می دهد
let c = a * b;     // عمل ضرب را انجام داده و مقدار 3 را درون متغیر جدید قرار می دهد

در زبان جاوا اسکریپت، عملگر ضرب (*)، اعداد را ضرب می کند.

انواع عملگرها (Operators)

JavaScript از انواع عملگر های زیر پشتیبانی میکند:

  • عملگر های حسابی (Arithmetic)
  • عملگر های مقایسه ای (Comparison)
  • عملگر های منطقی یا رابطه ای (Logical)
  • عملگرهای بیتی (Bitwise)
  • عملگر های انتساب (Assignment)
  • عملگر های شرطی یا سه تایی (Conditional)
  • عملگرهای تعیین نوع در زبان جاوا اسکریپت

عملگر های حسابی (Arithmetic) در زبان جاوا اسکریپت

+	//عمل جمع
-	//عمل تفریق - کم کردن
*	//عمل ضرب
**	//عمل به توان رساندن(Exponentiation (ES2016)
/	//عمل تقسیم
%	//باقیمانده تقسیم
++	//یکی یکی اضافه کردن
--	//یکی یکی کم کردن

عملگر + وقتی برای متغیر های از نوع رشته ای استفاده می شود، به عنوان عملگر اتصال (concatenation operator) رفتار می کند.

مثال:

let x = 5 + 5; // => 10
let y = "5" + 5; // => 55
let z = "Hello" + 5; // => Hello5

عملگرهای مقایسه ای (Comparison) در زبان جاوا اسکریپت

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

==	//برابری دو متغیر از نظر مقدار
===	//برابری دو متغیر از نظر مقدار و نوع
!=	//عدم برابری دو متغیر
!==	//عدم برابری از نظر مقدار و نوع
>	//بزرگتر از
<	//کوچکتر از
>=	//بزرگتر و مساوی
<=	//کوچکتر و مساوی
?	//عملگر شرطی (سه گانه) => condition ? exprIfTrue : exprIfFalse

عملگر های منطقی یا رابطه ای (Logical)

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

&&	//logical and
||	//logical or
!	//logical not

نمونه مثال زیر چگونگی استفاده از عملگر های مقایسه ای را در زبان جاوا اسکریپت نشان میدهد:

var a = true;
var b = false;

document.write(a && b)    // => false
document.write(a || b)    // => true 
document.write(!(a && b)) // => true 

عملگرهای بیتی (Bitwise)

عملگرهای بیتی یا به انگلیسی Bitwise Operators ، بطور کلی عملگرهایی هستند که بروی سیستم باینری ( Binary ) یا سیستم دودویی اعداد کار میکنند.

Operator	Description				Example		Same as			Result	Decimal
&			AND						5 & 1		0101 & 0001		0001	 1
|			OR						5 | 1		0101 | 0001		0101	 5
~			NOT						~ 5	 		~0101			1010	 10
^			XOR						5 ^ 1		0101 ^ 0001		0100	 4
<<			left shift				5 << 1		0101 << 1		1010	 10
>>			right shift				5 >> 1		0101 >> 1		0010	  2
>>>			unsigned right shift	5 >>> 1		0101 >>> 1		0010	  2
&	AND	 // اگه هر ۲بیت ۱ باشه، ۱ برگشت میده در غیراینصورت ۰ میده
|	OR	 // اگه یکی از بیت ها ۱ باشه، ۱ برگشت میده در غیراینصورت ۰ میده
^	XOR  //	اگه هر ۲بیت ۱ یا ۰ باشه، ۰ برگشت میده در غیراینصورت ۱ میده 
~	NOT  //	معکوس کردن بیت ها
^	XOR  // زمانی نتیجه ۰ هست که هر دو بیت یا ۱ یا ۰ باشند، و در غیراینصورت نتیجه ۱ هست.
>>	Zero Fill Left Shift //انتقال بیت ها از سمت راست به سمت چپ ( پُر شدن جای خالی با ۰ )
<<	Signed Right Shift //انتقال بیت ها از سمت چپ به سمت راست ( دارای بیت علامت )
<<<	Zero Fill Right Shift //انتقال صفرها از سمت چپ به سمت راست ( پُر شدن جای خالی با ۰ )

عملگر های انتساب (Assignment)

جاوا اسکریپت از عملگر های انتساب زیر پشتیبانی میکند:

Operator		Example	      	Same As
//حاصل سمت راست عملوند را به سمت چپ عملوند انتساب میدهد.
=	         	x = y	 		x = y
//ملوند سمت راست را با عملوند سمت چپ جمع کرده و نتیجه را به عملوند سمت چپ انتساب میدهد.
+=				x += y			x = x + y
//ملوند سمت راست را از عملوند سمت چپ کم کرده و نتیجه را به عملوند سمت چپ انتساب میدهد.
-=				x -= y			x = x - y
//عملوند سمت راست را با عملوند سمت چپ ضرب کرده و نتیجه را به عملوند سمت چپ انتساب میدهد.
*=				x *= y			x = x * y
//عملوند سمت چپ را بر عملوند سمت راست تقسیم کرده و نتیجه را به عملوند سمت چپ انتساب میدهد.
/=				x /= y			x = x / y
//باقی مانده ی تقسیم دو عملوند صحیح سمت چپ و راست را به عملوند سمت چپ انتساب میدهد.
%=				x %= y			x = x % y
//عملوند سمت چپ را به توان عملوند سمت راست رسانده و نتیجه را به عملوند سمت چپ انتساب میدهد.
**=				x **= y			x = x ** y

عملگر های شرطی یا سه تایی (Conditional)

تنها عملگر جاوا اسکریپت که سه عملوند می گیرد، عملگر شرطی (سه گانه) یا به اصطلاح The conditional (ternary) operator است.

یک عملگر شرطی در ابتدا یک عبارت را برای ture و یا false بودن آن ارزیابی کرده و سپس یکی از دو عبارت اجرایی داده شده را بسته به نتیجه ی ارزیابی اجرا میکند.

var a = 10;
var b = 20;

document.write((a > b) ? 100 : 200) // => 200 
document.write((a < b) ? 100 : 200) // => 100

عملگرهای تعیین نوع در زبان جاوا اسکریپت

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

typeof	//Returns the type of a variable
instanceof	//Returns true if an object is an instance of an object type

عملگر typeof یک عملگر یگانی است که قبل از تک عملوند خود قرار میگیرد. این عملوند میتواند از هر نوعی باشد. مقداری که عملگر typeof برمیگرداند یک مقدار رشته ایست که داده نوع عملوند را مشخص میکند.

var a = 10;
var b = "String";

document.write(typeof b == "string" ? "B is String" : "B is Numeric"); // => B is String 
document.write(typeof a == "string" ? "A is String" : "A is Numeric"); // => A is Numeric

عملگر instanceof در جاوااسکریپت، به شما اجازه می‌دهد که بررسی کنید که آیا یک شیء، یک نمونه از یک نوع خاص (کلاس، زیر کلاس، …) است یا نه.

class Employee{
}
var myEmp = new Employee();
if (myEmp instanceof Employee){
    console.log("myEmp is an Employee!");
} 
 بعدی   قبلی

ديدگاه كاربران


دیدگاهی وجود ندارد