۱۲ اکتبر ۲۰۲۲

مراجع شیء و کپی کردن

یکی از تفاوت‌های اساسی بین شیءها و مقدارهای اصلی(primitives) این است که شیءها “توسط مرجع” ذخیره و کپی می‌شوند، در حالی که مقدارهای اصلی مانند رشته‌ها، اعداد، مقدارهای boolean و غیره، همیشه “به عنوان یک مقدار کلی” ذخیره می‌شوند.

اگر ما بدانیم زمانی که مقداری را کپی می‌کنیم چه اتفاقی می‌افتد، این موضوع را بهتر متوجه می‌شویم.

بیایید با یک مقدار اصلی مانند رشته شروع کنیم.

اینجا ما یک کپی از message را درون phrase قرار می‌دهیم:

let message = "Hello!";
let phrase = message;

در نتیجه ما دو متغیر مستقل داریم که هر کدام رشته‌ی "Hello!" را ذخیره می‌کنند.