![جاوا اسکریپت چگونه چندین مقدار را برگردانیم؟ [Examples & Theory]](http://learn-programing.ir/wp-content/uploads/2022/08/jj-ying-q1x3cuziBsc-unsplash-scaled-768x576.jpg)
ساده ترین راه برای برگرداندن چندین مقدار در جاوا اسکریپت، بازگرداندن آرایه ای از چندین عنصر است.
function getVals() { return [val1, val2] }
سپس می توانید به صورت زیر به مقادیر برگشتی دسترسی پیدا کنید:
let values = getVals() let first = values[0] let second = values[1]
اگر به دنبال یک پاسخ سریع هستید، پس آن را دارید! اما برای نوشتن کد تمیز، موارد بالا همیشه بهترین راه برای برگرداندن دو مقدار نیست. در عوض، میتوانید مقادیر «برچسبشده» را با برگرداندن یک شی برگردانید.
این راهنما به شما می آموزد که چگونه چندین مقدار را در جاوا اسکریپت به روش های مختلف برگردانید.
برگرداندن چندین مقدار در جاوا اسکریپت
در جاوا اسکریپت، احتمالاً مجموعه ای از توابع نوشته اید که یک مقدار واحد را برمی گرداند. مثلا:
function sum(a, b) { return a + b }
اما اگر بخواهید تابعی بنویسید که چندین مقدار را برمی گرداند چه؟
راه حل 1: چندین مقدار را در یک آرایه برگردانید
یک راه ساده اما ساده برای برگرداندن مقادیر متعدد، بازگرداندن مقادیر در یک آرایه است.
برای مثال، اجازه دهید تابعی ایجاد کنیم که حاصل جمع و حاصل ضرب دو عدد را برمی گرداند:
function sumMul(a, b) { return [a + b, a * b] }
حالا وقتی این تابع را فراخوانی می کنید، باید آرایه برگشتی را در یک متغیر ذخیره کنید و سپس به دو مقدار دسترسی داشته باشید.
let results = sumMul(2, 5) let sum = results[0] let mul = results[1] console.log(sum, mul)
خروجی:
7 10
همچنین، به لطف آخرین بهروزرسانیهای جاوا اسکریپت (ECMAScript 6)، میتوانید ارزش بازگشتی را بهطور مستقیمتر بازسازی کنید.
بنابراین به جای اینکه مقدار بازگشتی را در یک متغیر ذخیره کنید و سپس مقادیر را یکی یکی از آن انتخاب کنید، می توانید از کوتاه نویسی استفاده کنید. اینگونه است:
let [sum, mul] = sumMul(2, 5) console.log(sum, mul)
خروجی:
7 10
این کد اکنون قابل درک تر به نظر می رسد.
اما راه دیگری برای برگرداندن مقادیر متعدد وجود دارد که حتی بصری تر و قابل نگهداری تر است.
راه حل 2: چندین مقدار را در یک شی برگردانید
به جای برگرداندن مقادیر در یک آرایه، می توانید آنها را در یک شی قرار دهید و مقادیر را برچسب گذاری کنید. این امر دسترسی به آن را آسان تر و شهودی تر می کند.
بازنویسی کنیم sumMul برای استفاده از این استراتژی در مثال قبل عمل کنید:
function sumMul(a, b) { return { sum: a + b, mul: a * b } }
اگر اکنون این تابع را فراخوانی کنید، راه بصری تری برای دسترسی به مقادیر بازگشتی وجود دارد:
let result = sumMul(2, 5) let sum = result.sum let mul = result.mul console.log(sum, mul)
خروجی:
7 10
همانطور که می بینید، اکنون می توانید به مقادیر برگشتی با نام آنها اشاره کنید. این باعث می شود کد خواناتر و کمتر مستعد خطا باشد. اکنون دشوارتر است که به طور تصادفی مقادیر را به هم بزنیم زیرا به وضوح برچسب گذاری شده اند.
جمعش کن
امروز یاد گرفتید که چگونه چندین مقدار را از یک تابع در جاوا اسکریپت برگردانید.
به طور خلاصه، دو راه برای انجام آن وجود دارد:
- آرایه ای از چندین مقدار را برمی گرداند. این واضح ترین و آسان ترین راه است. با این حال، خوانایی ندارد زیرا باید به مقادیر بازگشتی بر اساس شاخص مراجعه کنید.
- یک شی را با مقادیر “علامت گذاری شده” برمی گرداند. این رویکرد به کد کمی بیشتر نیاز دارد، اما قابل اعتمادترین است. با برچسب گذاری مقادیر بازگشتی، به هم ریختن همه چیز دشوار است. این به این دلیل است که می توانید به مقادیر برگشتی با نام آنها اشاره کنید.
با تشکر برای خواندن!
کد نویسی مبارک!
همچنین بخوانید
سوالات مصاحبه جاوا اسکریپت