انصار میرزایی
انصار میرزایی
خواندن ۴ دقیقه·۳ سال پیش

متغیر ها در جاوااسکریپت

اغلب مواقع برنامه جاوا اسکریپت برای کار نیاز به اطلاعات داره

  • مثلا : فروشگاه آنلاین - اطلاعات ممکنه شامل کالاهای فروخته شده و سبد خرید باشه
  • یا :یک برنامه چت - اطلاعات ممکنه شامل کاربرها، پیام ها و ... باشه

برای ذخیره این اطلاعات از متغیرها استفاده میکنیم

متغیر یک "فضای نامگذاری شده" برای داده هاست و ما می‌تونیم از متغیرها برای ذخیره موارد، بازدیدکنندگان و سایر داده‌ها استفاده کنیم

برای ایجاد متغیر در جاوا اسکریپت، از کلمه کلیدی let استفاده میکنیم

عبارت زیر یه متغیر با نام "message" ایجاد می کنه (به عبارت دیگه: اعلام می کنه):

let message;

حالا می‌تونیم با استفاده از عملگر انتساب مقداری داده رو داخلش قرار بدیم:

let message; message = 'Hello'; // store the string 'Hello' in the variable named message

رشته حالا در ناحیه حافظه مرتبط با متغیر ذخیره شده. ما می تونیم با استفاده از نام متغیر به اون دسترسی پیدا کنیم:

let message; message = 'Hello!'; alert(message); // shows the variable content

برای کوتاه کردن، می‌تونیم تعریف متغیر و انتساب رو توی یک خط ترکیب کنیم:

let message = 'Hello!'; // define the variable and assign the value alert(message); // Hello!

همچنین می تونیم چندین متغیر رو در یک خط تعریف کنیم:

let user = 'John', age = 25, message = 'Hello';

ممکنه کوتاه‌تر به نظر برسه، اما توصیه نمیشه. برای خوانایی بهتر، در هر خط از یک متغیر استفاده کنید.

نوع چند خطی شاید کمی طولانی تر به نظر برسه، اما خوانایی کد رو افزایش میده:

let user = 'John'; let age = 25; let message = 'Hello';

برخی افراد هم ، چندین متغیر رو با این سبک به صورت چند خطی تعریف می کنن:

let user = 'John', age = 25, message = 'Hello' ;


کلمه کلیدی var به جای let :

توی اسکریپت های قدیمی، ممکنه کلمه کلیدی دیگه ای هم پیدا کنید: var به جای let:

var message = 'سلام';

کلمه کلیدی var تقریباً همان let هستش. دقیقا یک متغیر رو اعلام می‌کنه، اما به روشی «قدیمی» و کمی متفاوت.

تفاوت های ظریفی بین let و var وجود داره، اما اونا هنوز برای ما مهم نیستند. بعدا شاید در رابطه باهاش حرف بزنیم



ما می‌تونیم به راحتی مفهوم «متغیر» رو درک کنیم، اگه اون رو به‌عنوان «جعبه‌ای» برای داده‌ها با برچسبی منحصربه‌فرد روی اون تصور کنیم.

به عنوان مثال، متغیر message رو می تونین شبیه جعبه ای با برچسب "message" با مقدار "Hello!" تصور کنید.که در اون:

  • ما می تونیم هر مقداری رو در داخل جعبه قرار بدیم
  • ما همچنین می تونیم اون رو هر چند بار که خواستیم تغییر بدیم
let message; message = 'Hello!'; message = 'World!'; // value changed alert(message);

وقتی که مقدار تغییر می کنه، داده های قدیمی از متغیر حذف می شن:

همچنین می تونیم دو متغیر رو تعریف کنیم و داده هاشون رو از یکی به دیگری کپی کنیم.

let hello = 'Hello world!'; let message; // copy 'Hello world' from hello into message message = hello; // now two variables hold the same data alert(hello); // Hello world! alert(message); // Hello world!


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

let message = &quotThis&quot // repeated 'let' leads to an error let message = &quotThat&quot // SyntaxError: 'message' has already been declared

پس، یک متغیر رو باید یکبار اعلام کنیم و بعدش بدون let به اون مراجعه کنیم.(مقدارش رو بگیریم یا تغییرش بدیم)



نامگذاری متغیرها

دو تا محدودیت برای نامگذاری متغیرها تئی جاوا اسکریپت وجود داره:

  • نام باید فقط شامل حروف، اعداد یا نمادهای $ و _ باشه.
  • اولین کاراکتر نباید رقمی باشه.
let userName; let test123;



ثابت ها ( constants )

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

const myBirthday = '18.04.1982';

متغیرهای اعلام شده با استفاده از const "ثابت" گفته می شن. اونها رو نمیشه دوباره مقداردهی کرد. تلاش برای انجام این کار باعث ایجاد خطا می شه:

const myBirthday = '18.04.1982'; myBirthday = '01.01.2001'; // error, can't reassign the constant!

وقتی یک برنامه نویس مطمئن باشه که یک متغیر هرگز تغییر نمیکنه، می تونه اون رو با const اعلام کنه تا تضمین شده باشه و به همه این واقعیت رو اعلام کنه.




خلاصه

با استفاده از کلمات کلیدی var، let یا const می تونیم متغیرها رو برای ذخیره داده ها اعلام کنیم.

  • یک : let – یک اعلان متغیر مدرن است.
  • دو : var - یک اعلان متغیر قدیمی است. معمولاً ما اصلاً از آن استفاده نمی‌کنیم
  • سه: const - مانند let است، اما مقدار متغیر را نمی توان تغییر داد.

متغیرها رو باید به گونه‌ای نام‌گذاری کنیم که به ما این امکان رو بده که به راحتی بفهمیم چه چیزی داخل اونها وجود داره


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

اگه چیزی بود که من اشتباه متوجه شدم حتما بهم بگو تا کنار هم یاد بگیریم ?

منبع: https://javascript.info


جاوااسکریپتjavascriptvariableمتغیرها
شاید از این پست‌ها خوشتان بیاید