متغییر ها (variables) در جاوا اسکریپت و 3 نوع متغییر ها
آنچه خواهید دید :
Toggleمتغییر (variable) چیست؟
متغیر (Variable) موضوعی هست که به یک مکان خاص در حافظه کامپیوتر برای ذخیره داده در یک برنامه کامپیوتری نسبت داده میشه. اگر بخوام به زبان ساده تری بگم، این موضوع مثل یه جعبه توی ذهن کامپیوتره که میتونید توش اطلاعات مختلف مثل عدد، متن یا هرچیز دیگه ای بریزد و بعداً با یه اسم خاص بهش دسترسی داشته باشید و از اون توی برنامتون استفاده کنید.
از اونجایی که کاربرد خیلی زیادی داره، توی تمامی زبان های برنامه نویسی وجود داره. در ادامه علاوه بر جاوا اسکریپت، چندین مثال از زبان های مختلف رو بهتون نشون میدم. پس ادامه مقاله رو بخونید که قراره کلی چیز جدید باهم یاد بگیریم!
متغییر ها (variables): ساختار کلی
قبل از اینکه وارد این بحث توی جاوا اسکریپت بشیم، بهتره که به صورت کلی بدونیم که یک متغییر از چه اجزایی تشکیل شده. به عکس زیر توجه کنید
همونطور که میبینید ۳ بخش اصلی داره
- تعریف (variable declaraction): اولین بخش یک متغییر، تعریف یک متغییر هست. جلوتر راجب این موضوع بیشتر توضیح میدم و ۳ روش تعریف رو باهم برسی می کنیم.
- نام گذاری (variable name): در این بخش، ما یک اسم برای اون متغییرمون تعیین می کنیم که هروقت که نیاز باشه با اون اسم ازش استفاده کنیم.
- مقدار دهی (variable value): در این بخش، به اون اسمی که انتخاب کردیم مقداری رو اختصاص می دیم که با صدا زدن اسم متغییر، بتونیم از مقدارش استفاده کنیم یا عملیات دیگه ای روی مقدارش انجام بدیم.
برای اینکه راجب این موضوع بیشتر بخونید به توضیحات خود زبان JavaScript در وبسایت JSInfo مراجعه کنید.
متغییر ها (variables) در جاوا اسکریپت
به مثال زیر دقت کنید
// string cont megademy = "academy"; // number let year = 1403; // object var megademyPostData = { writtenDate = "1403/03/27"; writtenHour = "11:35AM"; }
همونطور که می بینید هر داده و مقداری رو میشه به یک متغییر اختصاص داد. عدد، رشته، آبجکت و … . اگر که نمیدونید هرکدوم از این نوع داده ها چی هستند نگران نباشید. فقط به مثال های زده شده و نوع پیاده سازیشون دقت کنید.
اگر که یادتون باشه گفتم که ما ۳ نوع تعریف متغییر یا همون keyword برای تعریف متغییر توی جاوا اسکریپت داریم. بیاید این ۳ نوع رو باهم برسی کنیم.
کلمه کلیدی let
این کلمه کلیدی معمولاً برای داده هایی استفاده میشه که مقدارشون قراره تغییر کنه. برای مثال امتیاز یک فرد توی بازی کامپیوتری رو در نظر بگیرید.
مرحله اول اینه که ما یک متغییر مخصوص امتیاز بازیکن تعریف (Declare) کنیم. از اونجایی که یک بازیکن هنوز امتیازی دریافت نکرده، مقدارشو صفر میزاریم.
// player score let playerScore = 0;
بعد از اینکه بازیکن امتیازی رو دریافت کرد، مقدارشو تغییر میدیم.
playerScore = 18;
همونطور که میبینید ما بدون نوشتن کلمه کلیدی let
، اسم متغییر رو نوشتیم و بهش مقدار جدیدی دادیم. به این کار به اصطلاح reassign
کردن میگن. برای اینکه راجب این موضوع بیشتر بدونید، این مقاله رو توی medium مطالعه کنید.
به صورت خلاصه reassign
کردن یک متغییر به این معنی هست که ما مقدار اون متغییر رو توی حافظه تغییر میدیم.
کلمه کلیدی const
این کلمه کلیدی برای داده هایی استفاده می شه که مقدارشون ثابت هست. معمولاً ما به این نوع تعریف، ثابت میگیم. همونطور که از اسمش مشخص هست، این مقدار قابل تغییر نیست یا به اصطاح جدیدی که یاد گرفتیم، reassignable نیست.
const websiteUrl = "https://megademy.ir";
برای مثال ما مقدارمون رو آدرس وبسایت قرار دادیم که نشون دهنده این هست که در موقع برنامه نویسیمون نیاز نیست مقدارشو تغییر بدیم.
کلمه کلیدی var
این کلمه کلیدی، یک کلمه کلیدی قدیمی هست که میزان استفاده از اون توی جاوا اسکریپت مدرن کمتر شده. اما برای درک کد های قدیمی بهتر هست که این نوع رو هم بشناسید. var با let شباهت زیادی داره اما نوع دسترسی این نوع متغییر کمی با let متفاوت هست. برای درک بهتر این مقاله رو مطالعه کنید.
var todaysDate = "1403/03/27";
متغییر (variable): روش های نام گذاری
یکی از بخش های اصلی یک متغییر، بخش نام گذاری هست. توی تمامی زبان های برنامه نویسی، روش ها و قواعدی برای نام گذاری طبق شرایط خاصی وجود داره که ما حتماً باید به این موارد توجه داشته باشیم که کدمون به خطا نخوره.
- واضح و توصیفی (Descriptive): نامهایی رو انتخاب کنید که به طور واضح هدف متغیر رو توضیح بدن.
- مثال های درست:
customerName
,productPrice
,customerName
- مثال های غلط:
variableB
,variableA
- مثال های درست:
- معنادار (Meaningful): از متغییر های تک حرفی استفاده نکنید. (بجز iterator های رایج مثل i و j.)
- مثال های درست:
height
,width
- مثال های غلط:
x
,y
- مثال های درست:
- استفاده از روش های نام گذاری: در برنامه نویسی، روش های مختلفی برای نام نویسی وجود داره. ۳ روش پر استفاده رو باهم برسی کنیم
- روش camel case: در این روش اولین حرف از اولین کلمه، کوچک، و حرف اول مابقی کلمات بزرگ (Upper case) نوشته می شن.
- مثال:
megademyAcademy
- مثال:
- روش pascal case: در این روش، تمامی حروف اول کلمات، بزرگ (Upper case) نوشته می شوند.
- مثال:
MegademyAcademy
- مثال:
- روش snake case: در این روش، تمام کلمات بزرگ نوشته می شود و بین هر کلمه با استفاده از “_” جدا می شه.
- مثال:
MEGADEMY_ACADEMY
- مثال:
- روش camel case: در این روش اولین حرف از اولین کلمه، کوچک، و حرف اول مابقی کلمات بزرگ (Upper case) نوشته می شن.
- یکپارچگی نام ها: در طول برنامه، از یک روش نام گذاری استفاده کنید. برای مثال اگر از camelCase برای نام گذاری استفاده کردید، در کل برنامه تمامی متغییر های خودتون رو با این روش بنویسید.
- نام ها اختصاری نباشند: در نام گذاری، از اختصاری کردن متغییر ها پرهیز کنید. به این دلیل که اصل توصیفی بودن و معنا بودن رو رعایت نمی کنه.
- مثال:
pNumber
,btnColor
- کلمات کلیدی رزور شده: برای نام گذاری متغییر ها، از کلمات کلیدی که در همان زبان برنامه نویسی وجود دارند استفاده نکنید.
- مثال:
name
,const
,let
- مثال:
- کارکتر های خاص: بغییر از
_
از کارکتر های خاص مثل$
,%
,@
و … استفاده نکنید.- مثال:
$productName
- مثال:
- شروع با اعداد: اولین حرف متغییر رو با عدد شروع نکنید.
- مثل:
2user
,13score
- مثل:
- مثال:
چندین مثال از زبان های مختلف
زبان Go
var language = "Go"
زبان Php
$lanuage = "Php";
زبان Rust
let language = "Rust";
زبان C
char language = "C";
نتیجه گیری
همونطور که متوجه شدیم متغییر فضایی توی حافظه کامپیوتر هست که بهش یک مقداری اختصاص داده میشه و ما میتونیم هرجایی از کدمون که خواستیم با این داده و مقدار کار کنیم و عملیاتی روش پیاده کنیم.
از ۳ بخش اصلی declare, variable name, variable value تشکیل شده. وجود این ۳ مورد تو مرحله تعریف خیلی مهمه و توی تمامی زبان های برنامه نویسی وجود داره.
داخل جاوا اسکریپت ۳ نوع کلمه کلیدی برای تعریف متغییر وجود داره
- کلمه کلیدی let: برای مقدار هایی هست که متغییر هستند و تغییر می کنند.
- کلمه کلیدی const: برای مقدار هایی هست که ثابت هستند و تغییر نمی کنند.
- کلمه کلیدی var: استفاده از اون توی جاوا اسکریپت مدرن کمتر شده و تقریباً شبیه به let هست.
برای اینکه مقالاتی شبیه به این موضوع رو مطالعه کنید، به بخش مقالات مگادمی (مگامگ) مراجعه کنید.
درباره مجید کارگر
مجید کارگر هستم. ۲۱ سالمه و حدوده ۳ ساله تو حوزه فرانت در حال یادگیری و پیشرفت کردن هستم و از اول مهر ماه ۱۴۰۲ فرانت رو به صورت حرفه ای شروع کردم. تمام تلاشم اینه که دانشی رو که دارم با بقیه به اشتراک بزارم که همه باهم پیشرفت کنیم.
نوشته های بیشتر از مجید کارگر