عملگرها در JavaScript
عملگرها در JavaScript
عملگر انتساب (=) برای اختصاص یک مقدار به یک متغیر به کار می رود.
عملگر محاسباتی (+) برای جمع کردن مقادیر با یکدیگر به کار می رود.
z=2;
x=y+z;
بعد از اجرای دستورات بالا مقدار x برابر 7 است.
عملگرهای محاسباتی JavaScript
عملگرهای ریاضی برای اجرای محاسبات بین متغیرها و یا مقادیر به کار می رود.
جدول زیر، عملگرهای محاسباتی JavaScript را توضیح می دهد (با فرض y=5):
عملگر (Operator) | توضیحات | مثال | نتیجه | |
---|---|---|---|---|
+ | جمع | x=y+2 | x=7 | y=5 |
- | تفریق | x=y-2 | x=3 | y=5 |
* | ضرب | x=y*2 | x=10 | y=5 |
/ | تقسیم | x=y/2 | x=2.5 | y=5 |
% | باقیمانده تقسیم | x=y%2 | x=1 | y=5 |
++ | افزایش یک واحد | x=++y | x=6 | y=6 |
x=y++ | x=5 | y=6 | ||
-- | کاهش یک واحد | x=--y | x=4 | y=4 |
x=y-- | x=5 | y=4 |
عملگرهای انتسابی JavaScript
عملگرهای انتسابی، مقادیر را به متغیرها اختصاص می دهند.
جدول زیر، عملگرهای انتسابی JavaScript را توضیح می دهد (با فرض y=5 و x=10):
عملگر | مثال | یکسان با مثال | نتبجه |
---|---|---|---|
= | x=y | x=5 | |
+= | x+=y | x=x+y | x=15 |
-= | x-=y | x=x-y | x=5 |
*= | x*=y | x=x*y | x=50 |
/= | x/=y | x=x/y | x=2 |
%= | x%=y | x=x%y | x=0 |
عملگر (+) در رشته ها
عملگر (+) علاوه بر استفاده در محاسبات ریاضی برای جمع دو متغیر رشته ای و یا مقادیر متنی نیز بکار می رود.
مثال:
txt2="nice day";
txt3=txt1+txt2;
بعد از اجرای کد بالا، متغیر txt3 برابر "what a verynice day" می شود.
برای اضافه کردن فضای خالی بین دو متن، در انتها یا ابتدای یکی از آنها فضای خالی قرار می دهیم:
txt2="nice day";
txt3=txt1+txt2;
یا بین دو متغیر یک فضای خالی قرار می دهیم:
txt2="nice day";
txt3=txt1+" "+txt2;
بعد از اجرای کد بالا، متغیر txt3 برابر "what a very nice day" می شود.
جمع رشته ها و اعداد
یک قانون وجود دارد! اگر شما یک عدد و یک رشته را با هم جمع کنید حاصل یک رشته خواهد بود.
به مثال های زیر توجه کنید:
مثال (عملگرها در JavaScript)
document.write(x);
x="5"+"5";
document.write(x);
x=5+"5";
document.write(x);
x="5"+5;
document.write(x);
عملگرهای مقایسه ای JavaScript
عملگرهای مقایسه ای در دستورات منطقی برای تعیین تساوی یا اختلاف بین متغیرها و یا مقادیر استفاده می شوند.
جدول زیر، عملگرهای مقایسه ای JavaScript را توضیح می دهد (با فرض x=5):
عملگر | توضیحات | مثال | نتیجه |
---|---|---|---|
== | تساوری | x==8 x==5 |
false true |
=== | تساوی از نظر نوع و مقدار | x===5 x==="5" |
true false |
!= | مخالف | x!=8 | true |
> | بزرگتر از | x>8 | false |
< | کوجکتر از | x<8 | true |
=> | بزرگتر و مساوری | x>=8 | false |
=< | کوچکتر و مساوی | x<=8 | true |
چگونه از آن استفاده کنیم؟
عملگرهای مقایسه ای در دستورات شرطی برای مقایسه مقادیر استفاده می شوند.
در فصل های آینده درباره دستورات شرطی بیشتر خواهید آموخت.
عملگرهای منطقی JavaScript
عملگرهای منطقی برای تعیین منطق بین متغیرها و یا مقادیر استفاده می شود.
جدول زیر، عملگرهای منطقی JavaScript را توضیح می دهد (با فرض x=6 و y=3):
عملگر | توضیحات | مثال | نتیجه |
---|---|---|---|
&& | and | (x < 10 && y > 1) | true |
|| | or | (x==5 || y==5) | false |
! | not | !(x==y) | true |
عملگر شرطی (?)
عملگر (?) یک عملگر شرطی است که مقداری را به یک متغیر، مبنی بر یک یا چند شرط انتساب می دهد.
نحوه استفاده
مثال
مثال (عملگرها در JavaScript)
اگر متغیر visitor با مقدار "PRES" تنظیم شده باشد، آنگاه مقدار "Dear President" به متغیر greeting اختصاص داده خواهد شد و در غیر اینصورت، مقدار آن "Dear" می شود.
var visitor="PRES";
var greeting=(visitor=="PRES")?"Dear President ":"Dear ";
document.write(greeting);
</script>
- نوشته شده توسط امیر پهلوان صادق
- بازدید: 30382
دیدگاهها
سلام و ارادت
بزرگوار فک کنم توی ستون اول جدول عملگر مقایسهای جای علامت بزرگتر و کوچکتر و بزرگتر مساوی و کوچکتر مساوی باید عوض بشه
با تشکر
سلام، ضمن تشکر از شما، اصلاح شد.
سلام ببخشید من % نفهمیدم
var x=1
var y=5
x=y%x
چرا مقدار x صفر میشه....
گیج شدم
سلام دوست گرامی.
در ریاضیات یک مبحث داریم به نام نظریه ی اعداد، که در این نظریه یه بخشی وجود داره به نام محاسبات پیمانه ای. در مثالی که شما ذکر کرده اید، به علامت % تقسیم پیمانه ای گفته می شود. معنی y%x این است که: باقیمانده ی صحیح تقسیم y بر x را به ما بده. مثلاً باقیمانده ی تقسیم پیمانه ای عدد 7 بر 2 می شود 1 . و یا باقیمانده ی تقسیم پیمانه ای عدد 10 بر 2 می شود 0 چرا؟ چون 10 بر 2 بخش پذیر است و باقیمانده ی آن 0 می شود. و یا باقیمانده ی پیمانه ای تقسیم 5 بر 1 می شود 0، چون که عدد 5 بر عدد 1 بخش پذیر است و باقیمانده ی صحیح آنها 0 می شود.
سلام . ما آخر نفهمیدیم از ducument.write استفاده کنیم یا نکنیم :| شما میفرمایید که استفاده نکنیم بعد تو 90% مثال هاتون ازش استفاده میکنید !
سلام . به نظر بنده شما می تونید به جای استفاده از document.write برای دیدن نتیجه های کدها، از دستور ()console.log استفاده کنید. و سپس برای دیدن نتیجه ی خود، کلید F12 رو فشار بدید و قسمت console رو بیارید تا بتونید نتیجه رو مشاهده کنید. مثال:
console.log("th is is beyamooz");
بعنوان مثال به این لینک مراجعه کنید: codepen.io/sbaloot/pen/yOwpJG و پس از باز شدن، کلید F12 را بزنید و قسمت console را انتخاب کنید. نتیجه به خوبی نمایش می یابد.
سلام ببخشید این کد چی کار می کنه
c= document.getElementById("balance").innerHTML;
آیا محتوای Balance را درون متغیر C می ریزد؟ اگر به شکل زیر باشد چه معنی می دهد؟
c= document.getEle mentById("balan ce");
سلام
1) بله همین طور است.
2) معنی آن این است که با عنصری که آی دی آن balance است ارتباط برقرار می کند.
برای اطلاعات بیشتردر مورد دستور getElementById به لینک زیر مراجعه کنید:
www.beyamooz.com/jsref/3032-%D9%85%D8%AA%D8%AF-document-getelementbyid
سلام
سال خوبی داشته باشید
مثال آخر را هم میشه با if اجرا کرد؟
و اینکه" : " چکارمیکنه؟
سلام، ممنون ...
بله، مثال آخر در مطلب بالا، را می توان با دستور if نیز نوشت و کد آن بصورت زیر خواهد شد:var visitor="PRES";
var greeting;
if (visitor=="PRES ")
greeting="Dear President ";
else greeting="Dear ";
document.write(greeting);
دو نقطه در مثال اصلی، کاربرد else را دارد.
با سلام و تبریک سال نو به همه دوستان بیاموز
یک سوال دارم
در قسمت عملگرهای محاسباتی منظور از x=++y چیه و چه فرقی با x=y++ داره؟
اگه ممکنه توضیح کاملتری بدید که افزایش یک واحد یعنی چی و چرا مقدار x دفعه اول 6 و دفعه دوم 5 شده؟ ممنون
عملگر ++ به مقدار متغیر یک واحد اضافه می کند مثلاً اگر x دارای مقدار 5 است با یک جمع می شود و مقدار آن 6 می شود. تفاوت این دو در انتساب یا عملگر مساوی است. وقتی داریم x=++y ابتدا یک واحد به y اضافه می شود و سپس مقدار آن به x انتساب داده می شود بنابراین مقدار فعلی x و y برابر می شود. و وقتی داریم ++x =y ابتدا مقدار فعلی y (یعنی 5) به X انتساب داده می شود و سپس y یک واحد اضافه می شود. در حقیقت تفاوت دو دستور بالا در ترتیب عملگر هاست.