متغیرها

از موتو کد، دانشنامهٔ برنامه‌نویسی

متغیرها در جاوا اسکریپت محل‌هایی برای ذخیره داده‌ها هستند.[۱]

در مثال y ,x و z متغیر هستند:

var x = 5;
var y = 6;
var z = x + y;


مشاهدهٔ نتیجه


از مثال بالا، شما می‌توانید درک کنید که:

  • متغیر x مقدار ۵ را ذخیره می‌کند
  • متغیر y مقدار ۶ را ذخیره می‌کند
  • متغیر z مقدار ۱۱ را ذخیره می‌کند

بسیار شبیه عبارات جبری[ویرایش | ویرایش]

در این مثال، price2 ,price1 و total متغیرهای ما هستند:

var price1 = 5;
var price2 = 6;
var total = price1 + price2;


مشاهدهٔ نتیجه


در برنامه‌نویسی، درست همانند عبارت جبری، ما از متغیرها (همانند متغیر price1) برای نگهداری داده‌ها استفاده می‌کنیم.

در برنامه‌نویسی، همانند عبارت‌های جبری، ما از متغیرها در عبارت‌ها نیز استفاده می‌کنیم (total = price1 + price2).

از مثال بالا، شما می‌توانید مقدار دادهٔ ذخیره شده در متغیر total را محاسبه کنید که برابر با عدد ۱۱ است.

متغیرها در جاوا اسکریپت، نگه دارنده‌هایی برای ذخیره داده‌ها هستند .

معرفی کننده ها یا نام ها در جاوا اسکریپت[ویرایش | ویرایش]

تمام متغیرها در زبان جاوا اسکریپت می‌بایست با یک نام منحصر به فرد شناسایی شوند.

این نام‌ها، معرفی‌کننده (indentifiers) نامیده می‌شوند.

معرفی‌کننده‌ها می‌توانند نام‌های کوتاهی باشند (همانند x و y) یا می‌توانند نام‌های با مصماتری داشته باشند که شرح بیشتری در مورد داده‌ای که در خود نگه داری می‌کنند ارائه دهند. (age , sum , totalVolume)

قوانینی که برای تعیین نام متغیرها (نام منحصر به فرد) وجود دارد عبارتند از:

  • نام می‌تواند شامل حروف، اعداد، علامت زیر خط _ یا علامت دلار $ باشد
  • نام‌ها می‌بایست حتماً با یک حرف شروع شود
  • نام‌ها همچنین می‌توانند با علامت دلار $ و علامت زیر خط _ شروع شوند. (اما در این آموزش ما از این روش استفاده نمی‌کنیم)
  • نام‌ها حساس به حروف کوچک یا بزرگ (case sensitive) هستند. (y و Y دو متغیر متفاوت در جاوا اسکریپت هستند)
  • کلمات کلیدی (همانند کلمات کلیدی جاوا اسکریپت) نمی‌توانند به عنوان نام متغیر استفاده شوند
نام‌ها در جاوا اسکریپت حساس به حروف کوچک یا بزرگ (case-sensitive) هستند.

عملگر مقدار دهی[ویرایش | ویرایش]

در جاوا اسکریپت، علامت مساوی (=) عملگر «مقدار دهی» است نه عملگر «مساوی بودن».

این امر در عبارت‌های جبری متفاوت است. مثال بعدی در عبارت‌های جبری معنی ندارد:

x = x + 5

اما در زبان جاوا اسکریپت، عبارت فوق معنی دارد: دستور فوق، حاصل عبارت x + 5 را در متغیر x ذخیره می‌کند.

(ابتدا نتیجه x + 5 محاسبه شده و نتیجه محاسبه در متغیر x ذخیره می‌گردد. به مقداری که متغیر x نگه داری می‌کند ۵ واحد اضافه می‌شود)

عملگر "مساوی بودن " در جاوا اسکریپت به صورت == نوشته می‌شود.

انواع داده در جاوا اسکریپت[ویرایش | ویرایش]

متغیرها در زبان جاوا اسکریپت می‌توانند اعدادی همانند عدد ۱۰۰ و متنی همچون "John Doe" را در خود نگه داری کنند.

در برنامه‌نویسی، مقادیر متنی، رشته (string) نامیده می‌شوند.

جاوا اسکریپت قادر است تا با انواع داده‌های مختلفی کار کند اما در حال حاضر فقط به دو نوع عددی و رشته‌ای یا (string) فکر کنید.

مقادیر رشته‌ای (string)، درون علامت ' یا علامت " نوشته می‌شوند. اما اعداد بدون آن علامت‌ها نوشته می‌شوند.

اگر شما یک عدد درون علامت ' و " قرار دهید، جاوا اسکریپت آن را به عنوان یک رشته متنی یا string در نظر خواهد گرفت.

var pi = 3.14;
var person = "John Doe";
var answer = 'Yes I am!';


مشاهدهٔ نتیجه


تعریف کردن (ساختن) متغیرها در جاوا اسکریپت[ویرایش | ویرایش]

ساختن یک متغیر در جاوا اسکریپت «تعریف» یک متغیر نامیده می‌شود.

شما یک متغیر جاوا اسکریپت را با استفاده از کلمهٔ کلیدی var تعریف می‌کنید:

var carName;

بعد از تعریف یک متغیر در جاوا اسکریپت، آن متغیر هیچ مقداری را در خود نگه نمی‌دارد. (به صورت فنی این نوع متغیر مقدار تعریف نشده یا undefined را در خود نگه می‌دارد).

برای مقدار دهی یک مقدار به یک متغیر، از علامت مساوی (=) استفاده کنید:

carName = "Volvo";

شما همچنین می‌توانید زمانی که متغیر خود را تعریف می‌کنید آن را مقداردهی کنید:

var carName = "Volvo";

در مثال بالا، ما یک متغیر به نام carName تعریف کردیم و مقدار "Volvo" را در آن ذخیره کردیم.

سپس ما می‌توانیم محتوای این متغیر را به عنوان "خروجی برنامه" درون یک پاراگراف HTML ای با شناسه (demo" (id" قرار دهیم.

<p id="demo"></p>
<script>
var carName = "Volvo";
document.getElementById("demo").innerHTML = carName;
</script>


مشاهدهٔ نتیجه

خوب است که عادت کنید تمامی متغیرها را در ابتدای اسکریپت خود تعریف کنید.

یک عبارت، چندین متغیر[ویرایش | ویرایش]

شما می‌توانید چندین متغیر را در یک عبارت تعریف کنید.

عبارت را با کلمه‌ی var شروع کنید و متغیرها را با استفاده از ویرگول (Comma) از یکدیگر جدا کنید:

var person = "John Doe", carName = "Volvo", price = 200;


مشاهدهٔ نتیجه


عمل مقداردهی می‌تواند در چندین خط متفاوت انجام گیرد:

var person = "John Doe",
carName = "Volvo",
price = 200;


مشاهدهٔ نتیجه


مقدار = تعریف نشده[ویرایش | ویرایش]

در برنامه‌های کامپیوتری، متغیرها معمولاً بدون هیچ مقداری تعریف می‌شوند. مقدار آن‌ها می‌تواند نتیجه یریک محاسبه یا چیزی باشد که در مراحل بعدی برنامه فراهم می‌شود، همانند داده‌ای که کاربر وارد می‌کند.

یک متغیر تعریف شده بدون مقدار، مقدار undefined را به عنوان مقدار خود نگه داری می‌کند.

متغیر carName پس از اجرای این خط کد، مقدار undefined را به عنوان مقدار خواهد داشت:

var carName;


مشاهدهٔ نتیجه


تعریف دوبارهٔ متغیرهای جاوا اسکریپت[ویرایش | ویرایش]

اگر شما یک متغیر تعریف شده را دوباره تعریف کنید، متغیر داده خود را از دست نخواهد داد.

متغیر carName پس از اجرای کدهای زیر همچنان مقدار "Volvo" را به عنوان مقدار در خود نگهداری می‌کند.

var carName = "Volvo";
var carName;


مشاهدهٔ نتیجه


عبارت های ریاضی در جاوا اسکریپت[ویرایش | ویرایش]

همانند عبارت‌های جبری، شما می‌توانید عبارت‌های ریاضی را با استفاده از متغیرهای جاوا اسکریپت و استفاده از عملگرهایی مانند = و + محاسبه کنید:

var x = 5 + 2 + 3;


مشاهدهٔ نتیجه


شما همچنین می‌توانید چندین رشته را با یکدیگر جمع کنید اما رشته‌ها با عمل جمع در کنار یکدیگر قرار می‌گیرند:

var x = "John" + " " + "Doe";


مشاهدهٔ نتیجه


همچنین مثال زیر را نیز امتحان کنید:

مثال[ویرایش | ویرایش]

var x = "5" + 2 + 3;


مشاهدهٔ نتیجه

اگر شما یک عدد را درون علامت ′ یا ″ قرار دهید، سایر اعداد نیز به عنوان دادهٔ متنی یا رشته‌ای (string) در نظر گرفته می‌شود و با آن‌ها در عمل جمع همانند رشته‌ها رفتار خوهد شد.

اکنون این مثال را امتحان کنید:

مثال[ویرایش | ویرایش]

var x = 2 + 3 + "5";


مشاهدهٔ نتیجه


تمرینات جاوا اسکریپت[ویرایش | ویرایش]

Time2wait.svg ساخت نمونه مثال این بخش در دست اقدام است.



منابع آموزشی[ویرایش]