برنامه نویسی

جاوا اسکریپت (JS) Pass by Reference و Pass by Value

مقررات

Passing: برای اختصاص یک مقدار به یک متغیر یا ارسال آن به عنوان یک پارامتر.

عبور از ارزش

هر زمان که یک متغیر حاوی مقدار دیگری که یک شی یا یک آرایه نیست به همراه یک تابع به عنوان پارامتر ارسال شود، متغیر ارسال شده به یک کپی از مقداری تبدیل می شود که نگه می دارد. در نتیجه، متغیری که به تابع ارسال می‌شود، علی‌رغم هر کاری که تابع با آن انجام می‌دهد، ارزش خود را تغییر نمی‌دهد، به عنوان مثال، آن را دوباره تخصیص داده یا به‌روزرسانی می‌کند.

let x = 60 
console.log (x) // 60

function boo (y){
    y = 70 
    console.log (y) // 70
}

foo(x) 
console.log (x) // 60 : unchanged value of the x variable
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

از مرجع عبور کنید

هر زمان که یک متغیر حاوی مقدار دیگری که یک شی یا آرایه است به همراه یک تابع به عنوان پارامتر ارسال می شود، متغیر به عنوان ref به مقدار شی/آرایه آن به پارامتر ارسال می شود. در نتیجه، متغیری که به تابع ارسال می‌شود، اگر برای مثال با یک عنصر جدید از جفت کلید/مقدار به‌روزرسانی شود، مقدار آن تغییر می‌کند.

let x = {
    name:"john",
    age:22
} 
console.log (x) // {name:"john",age:22} 

function boo (y){
    y.statue = true
    console.log (y) // {name:"john",age:22, status:true} 
}

foo(x)
console.log (x) // {name:"john",age:22, status:true} 
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا