درس سوم- اظهارات، متغیرها و ثابتها
درس پیشین را به نخستین برچسب جاوا اسکریپت یعنی اسکریپت و ویژگیهایش اختصاص دادیم تا شما با نوشتن اولین کد خود متوجه راحتی کار با این زبان بشوید. در این درس و بطور احتمال در درسهای بعدی میخواهیم کمی با مفاهیم ابتدایی و کلیدی برنامه نویسی با زبان جاوا اسکریپت آشنا بشویم.
مفاهیم مهم
اظهارات (دستورات) جاوا اسکریپت
جاوا اسکریپت در اصل مجموعه ای از اظهارات (خطوط یا دستورات) نوشته شده است که توسط مرورگر خوانده و اجرا میشود. این خطوط یا اظهارات برای مرورگر به عنوان دستوراتی تعریف میشوند که مرورگر باید خط به خط (به ترتیب خط) آنها را اجرا کند. در اصل این دستورات هستند که به مرورگر میگویند باید چه عملی را انجام دهد.
بطور نمونه:
alert("درود جهان");
خط بالا یک دستور در جاوا اسکریپت است که به مرورگر میگوید عبارت «درود جهان» را نمایش دهد.
نقطه ویرگول یا Semicolon سمی کالن (;)
نقش اصلی «نقطه ویرگول» جدا سازی دستورات (اظهارات) است و بطور عمومی در انتهای هر دستور اجرایی گذاشته میشود. استفاده از این علامت به ما این امکان را میدهد که در یک خط بتوانیم چندین دستور اجرایی را بنویسیم و آنها را با نقطه ویرگول از هم جدا کنیم.
alert("درود جهان");
نکته: قرار دادن نقطه ویرگول در جاوا اسکریپت -در صورتی که هر دستور را در یک خط بطور مجزا بنویسید- بصورت دلخواه و انتخابی میباشد و کدها بدون این علامت هم اجرا میشوند. اما اگر دستورات را پشت سر هم و در یک خط بنویسید باید از علامت نقطه ویرگول استفاده کنید. در کل بهتر است برای خوانایی بهتر خطوط دستورات از این علامت استفاده شود.
بلوک بندی کدها
بیانیهها یا اظهارات (دستورات) جاوا اسکریپت میتوانند با هم در یک بلوک گروه بندی شوند. بلوک با آکولاد چپ شروع و با آکولاد راست به پایان میرسد. هدف از ساختن یک بلوک این است که مرورگر دنبالهای (مجموعهای) از دستورات را با هم اجرا کند. یک نمونه خوب از اظهارات جاوا اسکریپت که با هم در بلوک گروه بندی میشوند عبارت است از «توابع». یک تابع در اصل مجموعهای از کدهاست که در یک بلوک قرار میگیرند.
function myFunction()
{
document.write(" گرفتن داده از فایل خارجی ");
.
.
.
}
بزرگی و کوچکی عبارات در جاوا اسکریپت
جاوا اسکریپت به بزرگی یا کوچکی حروف استفاده شده در اظهارات حساس است. یعنی تابعی با نام myFunction با تابع MyFunction در حالی که دارای یک نام هستند دو تابع متفاوت میباشند.
فضای خالی
جاوا اسکریپت فضاهای اضافی (خالی) را نادیده میگیرد. شما میتوانید فضای سفید یا خالی به ما بین اسکریپت خود اضافه کنید، تا آن را بیشتر قابل خواندن کنید. این امر به راحتی و خوانایی کدهای شما کمک میکند.
شکستن خطوط کدها با خط مورب
با کمک یک خط مورب () میتوانید یک خط کد را به دو قسمت تقسیم کرده و آنها را در دو خط بنویسید:
document.write ("درود
جهان") ;
البته نوشتن کد به شیوه زیر اشتباه است:
document.write
("درود جهان");
توضیحات (Comments) در جاوا اسکریپت
توضیحات نوشتههایی هستند که شما برای شرح کدهای خود مینویسید. این عمل به شما کمک میکند که اگر در آینده به سراغ کدهای پیشین خود آمدید با خواندن توضیحات خیلی ساده عملکرد کدهای خود را بیاد آورید.
نکته: توضیحات توسط جاوا اسکریپت اجرا نمیشوند، این یعنی مرورگر آنها را نمایش نمیدهد.
توضیحات یک خطی: برای نوشتن توضیحات تک خطی از علامت دو خط مورب // استفاده میکنیم:
// این یک توضیح اضافه تک خطی برای یادآوری کدهاست
توضیحات چند خطی: توضیحات چند خطی با یک خط مورب و ستاره (*/) آغاز شده و با ستاره خط مورب (/*) پایان مییابد.
/*
این یک توضیح اضافه چند خطی میباشد.
در صورتی که اینجا کدی بنویسید آن کد از طرف جاوا اسکریپت به عنوان توضیحات قلمداد میشود و اجرا نمیگردد
*/
نکته: بطور معمول در زمانهایی که میخواهیم از اجرای کدهایی جلوگیری کنیم، آنها را در بین علامتهای توضیحات قرار میدهیم این حرکت شیوه خوبی برای ایراد یابی در کدهایمان است.
/*
document.write(" گرفتن داده از فایل خارجی ")
*/
از این تکنیک در زمان ایراد یابی کدها استفاده میکنیم.
نکته: میتوانیم از توضیحات در آخر یک خط کد برای شرح آن دستور استفاده کنیم:
document.write(" گرفتن داده از فایل خارجی "); // این دستور عبارت داخل پرانتز را چاپ می کند
متغیرها در جاوا اسکریپت
متغیرها ظرف یا مکانی درون حافظه هستند که برای نگهداری و ذخیره مقدارهای مختلف مورد استفاده قرار میگیرند. برای هر متغیری میتوان نامی انتخاب کرد و یکی از انواع دادهها را به آن نسبت داد. (درون آن قرار داد.)
در جاوا اسکریپت قبل از استفاده از متغیر باید آن را تعریف کرد. تعریف یا ساختن متغییر به این شکل است که باید ابتدا از کلمه var استفاده کرد و بعد نام متغییر را نوشت. در آخر هم از علامت نقطه ویرگول بهره برد. بعد از تعریف متغیر مقدار آن خالی یا تعریف نشده است:
var x ; // این اظهار که در قالب یک دستور نوشته شده است یک متغییر می سازد
این عمل متغییری با نام x میسازد که مقدار آن خالی است.
نکته: حال متغییر x یک متغیر با مقدار تعریف نشده (undefined) است.
برای نسبت دادن یک مقدار به متغیر باید آن مقدار را در جلوی متغییر بعد از علامت = قرار داد.
var x = 5; // این دستور یک متغیر عددی با مقدار 5 می سازد
نکته: در جاوا اسکریپت میتوان یک متغیر که به آن پیش از این مقداری نسبت داده شده را درون متغیر دیگری ریخت و یا حاصل ریاضی یک عمل را در متغیر دیگری قرار داد:
x = 5 ;
y = 6 ;
z = x ; مقدار این متغیر می شود 5 //
z = x + y ; مقدار این متغیر می شود 11 // *
z = 2 + y ; مقدار این متغیر می شود 8 // *
نکته: متغیرها میتوانند حاوی یک مقدار یا عبارت بشوند. (به نمونه بالا دقت کنید. *)
نکته: در جاوا اسکریپت ما قادریم چندین متغیر را در یک خط با استفاده از «ویرگول» تعریف کنیم:
var lastname = "علی" , age = 30 , job = "ایرانی" ;
قوانین نام گذاری متغیرها
- نام متغیر باید با یک حرف شروع شود.
- نام متغیر میتواند با علامتهای $ و _ آغاز شود. (پیشنهاد نمیشود.)
- جاوا اسکریپت به بزرگی و کوچکی نام متغیر حساس است.
ثابتها
همانطور که از نام آن پیداست ثابتها مقادیری که تغییر نمیکنند را در خود نگهداری میکنند. ثابتها را با استفاده از کلمه کلیدی const تعریف میکنیم. تفاوت ثابتها با متغیرها در این است که ثابتها فقط میتوانند یک مقدار ثابت بگیرند و دیگر نمیتوان مقدار آنها را تغییر داد. برای نمونه وقتی در یک برنامه برای بدست آوردن مساحت دایره یک ثابت با مقدار ۳.۱۴ تعریف میکنیم دیگر در طول برنامه مقدار آن را تغییر نمیدهیم. همانطور که میدانید برای بدست آوردن مساحت دایره به عدد ثابت «پی» نیاز داریم و این عدد همواره ثابت است.
Const p=3.14;
Const p=2;این تغییر امکان پذیر نیست و مقدار این ثابت را که در بالا تعریف کردیم دیگر نمی توان تغییر داد //
نوع دادهها در جاوا اسکریپت
در جاوا اسکریپت انواع دادههای زیر وجود دارند:
- عددی (Number)
جاوا اسکریپت تنها یک نوعِ عددی دارد که میتواند صحیح یا اعشاری باشد.
var x = 4.00 ;
var y = 4 ;
- رشتهای (String)
مجموعهای از کاراکترها را شامل میشود که داخل علامتهای " " یا ' ' قرار میگیرند. این کاراکترها حتی میتوانند عدد باشند.
var name = "احمد 11" ;
var name = '547' ;
- منطقی (Boolean)
نوعی که مقدار «درست» یا «نادرست» را شامل میشود.
var x=true;
var y=false;
- آرایهها (Array)
نوعی داده که مجموعهای از مقادیر را در بر میگیرد. در اصل آرایه مجموعهای از متغیرهایی از یک نوع داده با نام یکسان است که هر کدام از اعضای (متغیرهای) آن توسط یک شمارنده (اندیس) از یکدیگر متمایز میشوند. شمارنده هر عضو آرایه در یک براکت در مقابل نام آن بصورت عددی (از ۰ تا....) تعیین میشود و برای مقدار دهی و دسترسی به هر عضو آرایه از اندیس آن استفاده میشود. برای تعریف یک آرایه از واژه کلیدی new Array به شکل زیر استفاده میشود:
var = نام آرایه new Array();
var Cars = new Array();
برای مقدار دادن به آرایه به شکل زیر است:
cars[0] = "پراید";
cars[1] = "رنو";
cars[2] = "بنز";
در ادامه دوره بیشتر در این مورد بحث خواهد شد.
- آبجکتها (Objects)
توضیح در طول دوره!
- تهی (null)
نوعی که دارای مقدار تهی میشود. توجه کنید متغیری که دارای مقدار تهی است خالی نیست بلکه مقداری با تعریف تهی در آن قرار میگیرد.
name = null ;
- تعریف نشده (undefined)
مقداری که اندازه آن تعریف نشده است. در قسمت متغیرها متوجه این مفهوم شدیم:
var x ;
متغییر x یک متغیر با مقدار تعریف نشده (undefined) است.
در این درس به مفاهیم پایهای و مهم جاوا اسکریپت پرداختیم. در درس بعدی با عملگرها کار خواهیم کرد.