متغیرها و روش تعریف آن ها در جاوااسکریپت

متغیرها در جاوااسکریپت مانند محفظه هایی هستند که داده ها در آنها نگه
داری می شوند
.

در مثال زیر x, y, z متغیر هستند و var کلمه
کلیدی برای تعریف متغیرهاست که
در دامه با انواع دیگری از کلمات کلیدی برای تعریف متغیرها در جاوااسکریپت آشنا می شویم.

در این مثال x متغیری است که مقدار 5 را در خودش دارد

و y دارای مقدار 6 است، z هم مقدار 11 را در خودش دارد .

var x = 5;

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

 

چرا باید از متغیرها استفاده کنیم؟

شاید این سوال پیش بیاید که چرا باید متغیر تعریف کنیم درحالی که میتوانیم همین مقادیر را هروقت که نیاز داشتیم به صورت مستقیم استفاده کنیم. در یک مثال ساده فرض کنید می خواهیم مساحت یک مستطیل را محاسبه کنیم. اگر طول را a و عرض را b  در نظر بگیریم، برای محاسبه مساحت لازم است که طول و عرض را در یکدیگر ضرب کنیم:

Var a = 5;

Var b = 7;

Var area = a*b;

در مثال بالا، area متغیری است که دارای مقدار 35، یعنی مساحت مستطیل است. پس در ادامه برنامه هرگاه نیاز به  مساحت مستطیل داشیم کافیست فقط area را فراخوانی کنیم. البته در مثال بالا متغیر های a و b به صورت ایستا تعریف شدند، در ادامه آموزش خواهیم آموخت که چگونه این مقادیر را از کاربر بگیریم.

یا مثلا برای محاسبه محیط در مثال بالا کافیست یک خط کد var Environment = (a + b)/2 را اضافه کنیم و هرگاه در هر کجای برنامه به محیط نیاز داشتیم Environment را فراخوانی کنیم.

 

نکاتی که هنگام تعریف متغیر باید رعایت کنیم:

  • نام متغیر میتواند کوتاه ( x, y, z,…) یا بلند و توصیفی ( number, sum, area, …) باشد.
  • نام مغیر می تواند حاوی ارقام(1,2,…)، حروف(a, b, …)، ( _ )، ($) باشد.
  • نام ها باید با یک حرف شروع شوند.
  • نام ها همچنین می توانند با $ و _ شروع شوند (اما ما در این آموزش از آن استفاده نخواهیم کرد).
  • نامها به حروف کوچک و بزرگ حساس هستند(y,Y) و (number, Number)متغیرهای مختلفی هستند.
  • کلمات رزرو شده و کلیدی مانند function, class, const را نمی توانیم به عنوان نام متغیر در نظر بگیریم

 

انتخاب نام متغیر:

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

فرض کنید میخواهیم نام متغیری که قرار است نام خانوادگی(family name)  در آن قرار بگیرد را انتخاب کنیم، در روش استفتده از کلمات ترکیبی می توان به این روش ها نام را انتخاب کرد:

Camel Case: familyName

در این روش کلمه اول با حرف کوچک و از کلمه دوم به بعد فقط حرف اول هر کلمه با حرف بزرگ نوشته می شود

Pascal Case: FamilyName

این روش تقریبا مانند روش اول است، با این تفاوت که شروع کلمه اول نیز با حرف بزرگ است.

Snake Case: family_name

Snake Case (All Caps): FAMILY_NAME

در این روش کلمه ها با (_)از یکدیگر جدا می شوند.

 

در این آموزش از camelCase استفاده می کنیم.

 

 

روش های تعریف متغیر

در جاوا اسکریپت متغیرهارا می توان به روش های const, let, var تعریف کرد.

var name = “ali”;

let name = “ali”;

const name = “ali”;

در مثال بالا ما به سه روش متغیر name را تعریف کردیم، اما تفاوت این سه متغیر با یکدیگر چیست؟

هنگامی که در برنامه متغیری را با کلمه کلیدی var  تعریف میکنیم، در طول برنامه اگر دوباره آن متغیر را تعریف کنیم و مقدارش را عوض کنیم، متغیر آخرین مقداری که به آن منتسب شده را در بر می گیرد.

به مثال زیر دقت کنید:

var name = “ali”;

در اینجا مقدار درون متغیر name مقدار ali است. حال اگر در همین برنامه بار دیگر متغیری به نام name  تعریف شود، مقدار name تغییر میکند.

 

به عنوان مثال:

Var name = “ali”;

Var name = “sara”;

در اینجا متغیر name  مقدار sara را در خود دارد. یعنی sara جایگزین ali شده.

اما هنگام استفاده از کلمه کلیدی let  این امکان وجود ندارد و اگر ما یک متغیر را برای بار دوم تعریف کنیم به ما خطا می دهد

let name = “ali”;

let name = “sara”;

مثال بالا را اگر اجرا کنیم به ما خطایی با عنوان اینکه متغیر name قبلا تعریف شده نمایش داده می شود.

اما در این روش ما میتوانیم مقدار درون متغیر را در طول برنامه تغییر دهیم و محدودیتی نداریم.

فقط نمی توانیم یک متغیر را بیشتر از یکبار تعریف کنیم.

به مثال زیر توجه کنید:

let name = “ali”;

name = “sara”;

در این مثال sara جایگزین ali  میشود. چون ما دومرتبه متغیر را تعریف نکردیم و فقط یکبار از کلمه کلیدی let برای تعریف name استفاده کردیم.

و اما تفاوت const با این دو کلمه کلیدی در این است که ما در let می توانستیم مقدار متغیر تعریف شده را تغییر دهیم اما هنگام تعریف نتغیر با const امکان تغییر مقدار آن وجود ندارد و مقدار درون آن همیشه ثابت و غیر قابل تغییر است. و از این روش در مواردی که مطمئنیم داده قرار نیست در طول برنامه تغییر کند استفاده می کنیم. که در پروژه های این آموزش از let و const استفاده می کنیم.

البته تفاوت های دیگری نیز وجود دارد که در پروژه ها به آن ها می پردازیم

Leave a comment

Your email address will not be published. Required fields are marked *