جاوااسکریپت ---> درس شماره 5 :: متغییرها و عملگرهای JS

بعد از یک تاخیر کوتاه مدت دوباره وارد دنیای زیبای JS می شویم .در درسهای قبل مطالب مقدماتی مهمی را تحت پوشش قرار دادیم تا با زمینه ای مطلوب وارد بخش تجربی و عملی آموزش JS بشویم .
در این درس علائم ریاضیی که در JS کاربرد دارند را بررسی می کنیم . در ابتدا به مفهوم «متغییر» می پردازیم . در توضیحی بسیار ساده باید بگویم ، متغییر مانند یک جعبه می باشد که بر اساس نوعش می تواند اشیاء و مقادیر مختلفی را در خود جای دهد .
طبیعی است که هر یک از این جعبه ها باید برای خودش اسم خاص و منحصر به فردی داشته باشد تا از دیگر جعبه ها مجزا شده و قابل تمییز دادن باشد . متغییر ها نیز دقیقا حکم این جعبه ها را دارند ، مقادیر خاصی را می پذیرند و با نام خاصی از بقیه جدا می شوند .
و اما انواع متغییر ؛ یکی از معمول ترین و معروفترین نوع متغییر ها ، متغییر های عددی(numeric variables) هستند که می توانند اعداد مختلف را بدون محدودیت رقمی در خود جای دهند . از این متغییر ها می توان برای اعداد اعشاری و منفی نیز استفاده کرد . برای مثال وقتی ما می خواهیم عدد 348/3242 را به متغییری به نام mark نسبت دهیم باید به این صورت ، عمل مقدار دهی را انجام دهیم :
mark=3242.348

نوع دیگری از متغییر ها در JS متغییر های رشته ای (string variables) هستند که می توانند یک متن یا عبارت را در خود جای دهند به عنوان مثال اگر بخواهیم عبارت world wide web را به متغییر www نسبت دهیم به این صورت عمل می کنیم :
www="world wide web"

توجه داشته باشید که باید در آغاز و پایان عبارت علامت " (quotation mark) را قرار بدهیم .
دانستن این نکته بسیار مهم ایت که هیچگاه دو متغییر mark=3242.348 و "3242.348"=mark با هم برابر نیستند زیرا اولی یک متغییر عددی و دومی یک متغییر رشته ای است !!! پس هیچگاه از علامت "" برای متغییر های عددی استفاده نکنید .
نکته مهم دیگر این است که نباید در قسمت نام متغییر از علامت فاصله (space) استفاده کنید به عنوان مثال متغییر w w w هرگز برای Java Script قابل قبول نیست و یک خطای برنامه نویسی محسوب می شود .
متغییر منطقی (Boolean variables) نوعی از متغییر است که نسبت به بقیه انواع متغییر ها محدود تر است ، بدین معنی که فقط دو مقدار TRUE (درست) و False (نادرست) را می پذیرد . از متغییر بولین (منطقی) اکثرا در نوشتن شرط ها در JS استفاده می شود .
و اما متغییر شئ (Object Variables) که از انواع مهم متغییر هاست . این نوع از متغییر در اکثر برنامه های JS کاربرد دارد و در ان یک شئ یا اتفاق مربوط به آن شئ ذخیره می شود . مثلا وقتی می خواهیم شئ به اسم Core را در داخل متغییریبه نام Attribute جای دهیم بدین صورت عمل می کنیم:

Attribute=core


در مورد این نوع متغییر در درس های آینده توضیحات بیشتری خواهم داد .
در پایان بحث مربوط به متغییر ها بهتر از به نکات بسیار مهم زیر توجه کنید :
_ زبان JS در تعریف نام متغییر ها به حروف بزرگ و کوچک حساس است یعنی هیچگاه متغییرهای Www ، WWW و www با هم برابر نیستند و JS هر یک را متغییری جداگانه می داند .

_ هیچگاه نام یک متغییر با عدد شروع نمی شود . در ضمن استفاده از نقطه (.) و علامت هایی چون @ و $ و % در نام متغییر جایز نیست . پس متغییر هایی چون 12fm و se.r و rt@r برای زبان JS بی معنی هستند .

_ برای نام یک متغییر نمی توان از کلمات رزرو شده JS مانند this ، comment ، case و بسیاری دیگر استفاده کرد . تعداد کلمات رزرو شده در JS زیاد است و من به مرور زمان به همه آنها اشاره خواهم کرد .

_ وقتی ما متغییری مانند "mark="world wide web را تعریف می کنیم در واقع مقدار world wide web را به متغییر mark نسبت می دهیم و تصور اینکه بر اساس این دستور world wide web با mark برابر است ، تصوری کاملا نادرست است .

برای هر کسی که اندکی اطلاعات پیش زمینه برنامه نویسی دارد واضح است که هر زبانی که عملگرهای ریاضی چون جمع ، تفریق و غیره را نداشته باشد ، یک زبان ناقص بوده و فاقد یکی از اساسی ترین خصوصیات یک زبان برنامه نویسیست .
زبان JS دارای یکی از کاملترین علائم و دستورات ریاضی است که از نقاط قوت این زبان به شمار می رود . توجه داشته باشید که ما می توانیم توسط این عملگر ها بین دو یا چند متغییر یک یا چند عمل ریاضی را انجام داده و حاصل را به یک متغییر دیگر نسبت دهیم .
ساده ترین عملگر این زبان ، عملگر جمع است که دارای نکات مهمی است . فرض کنیم دو متغییر به نام های m1=5 و m2=7 داشته باشیم که هر دو متغییر عددی باشند . در این صورت می توانیم اندو را با استفاده از دستور زیر با هم چمع کرده و داخل متغییر d قرار دهیم :
d=m1+m2

در این حالت متغییر d دارای مقدار عددی 12 خواهد بود . نکته قابل توجه این است که از جمع دو متغییر عددی ، متغییری عددی به وجود می آید .
حال فرض کنید دو متغییر m1 و m2 ی ما دارای مقدار رشته ای day و night باشند . در این صورت در مورد حاصل جمع آنها داریم :
d=m1+m2

در حالت جمع دو مقدار رشته ای ، مقدار حاصل برابر است با مقادیر دو متغییر در کنار هم ، یعنی مقدار dبرابر خواهد بود با daynight ، و همانطور که مشاهده می کنید هیچ فاصله ای بین دو مقدار نخواهد بود. حتما به این نکته بسیار مهم توجه داشته باشید که هیچگاه m1+m2 با m2+m1 برابر نیست زیرا همیشه در جمع رشته ای مقدار متغییر دوم بعد از مقدار متغییر اول قرار خواهد گرفت یعنی
r=m1+m2 پس : r=daynight
t=m2+m1 پس : t=nightday

ممکن است شما بخواهید یک متغییر عددی را با یک متغییر رشته ای جمع کنید . در این صورت یک مقدار رشته ای از جمع دو متغییر بدست خواهد آمد . مثال زیر مطلب آشکار تری در اختیار شما قرار می دهد .
P="javascript"
t=239
f1=p+t پس : f1="javascript239"
f2=t+p پس : f2="239javascript"


نکته قابل توجه دیگر این است که در جمع دو متغییر منطقی ، مقدار TRUE برابر با 1 (یک) و مقدار FALSE برابر با 0 (صفر) محسوب خواهد شد .در واقع False را می توان دارای مقدار پوچ و True را می توان دارای مقدار کامل یعنی 1 در نظر گرفت . اگر هر دو متغییر True باشند حاصل جمع انها برابر 2 خواهد بود ، در صورت FALSE بودن هر دو حاصل برابر صفر و در صورتی که یکی True و دیگری False باشد حاصل برابر 1 خواهد بود .
چون در این کلاس کاملترین مطالب و کوچکترین نکات در مورد مباحث مختلف JS ارائه می شود ، اتمام هر مبحث در یک جلسه امکان پذیر نیست پس ادامه بحث در مورد عملگر ها را به درس بعد موکول می کنیم ...

تا بعد ... در پناه حق
نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد