مسیر
/
JavaScript
JavaScript
/
برنامه‌ی درسی
/
تجزیه‌ی آرایه
تج

تجزیه‌ی آرایه در JavaScript

1 تمرین

درباره‌ی تجزیه‌ی آرایه

«انتساب تجزیه‌سازی آرایه» روشی مختصر برای استخراج مقادیر از یک آرایه است. نحوه‌ی نگارش آن شبیه به عبارت آرایه‌ی تحت‌اللفظی است، با این تفاوت که در سمت چپ انتساب می‌آید، نه در سمت راست.

const frenchNumbers = ['quatre-vingts', 'quatre-vingt-dix', 'cent'];
const [french80, french90, french100] = frenchNumbers;

french80;
// => 'quatre-vingts'
french90;
// => 'quatre-vingt-dix'
french100;
// => 'cent'

انتساب مجدد

چون متغیرها بر اساس موقعیت به مقادیر آرایه نگاشت می‌شوند، می‌توان از نحوه‌ی نگارش تجزیه‌سازی برای انتساب یا انتساب مجدد چند متغیر در یک عبارت واحد استفاده کرد.

let [a, b] = ['world', 'hello'];
[b, a] = [a, b];

a;
// => 'hello'
b;
// => 'world'

این کار برای آرایه‌های تودرتو هم انجام می‌شود.

let [a, b, c] = ['orange', 'purple', 'green'];
[[a, b], c] = [[c, a], b];

a;
// => 'green'
b;
// => 'orange'
c;
// => 'purple'

نادیده گرفتن مقادیر

نحوه‌ی نگارش تجزیه‌سازی این امکان را می‌دهد که هنگام نگاشت، از برخی مقادیر صرف‌نظر کنید؛ برای نمونه، برای نادیده گرفتن موقعیت‌های مشخصی در آرایه. در مثال زیر، فرض کنید تابعی به اسم getUserInfo داریم که آرایه‌ای شامل اسم و فامیل و نشانی خیابان یک کاربر برمی‌گرداند.

getUserInfo();
// => ["Valerie", "Noir", "Sunny Lane 523"]

const [, , streetAddress] = getUserInfo();

streetAddress;
// => "Sunny Lane 523"

کنار گذاشتن مقادیر

همچنین لازم نیست در انتساب از همه‌ی مقادیر استفاده شود.

const [firstName, lastName] = getUserInfo();

firstName;
// => "Valerie"

lastName;
// => "Noir"

گرفتن مقادیر بیشتر از آنچه موجود است

حتی می‌توان مقادیر بیشتری از آنچه آرایه در خود دارد استخراج کرد؛ متغیرهای باقی‌مانده مقدار undefined می‌گیرند. این کار وقتی مفید است که تعداد مقادیر از پیش معلوم نباشد.

const pickAtLeastOne = ['first choice', 'second choice'];
const [first, second, third, fourth] = pickAtLeastOne;

first;
// => "first choice"

second;
// => "second choice"

third;
// => undefined

fourth;
// => undefined

مقادیر پیش‌فرض

انتساب تجزیه‌سازی آرایه می‌تواند مقادیر پیش‌فرض را برای وقتی فراهم کند که در آرایه‌ی مبدأ هیچ مقدار متناظری وجود ندارد.

const [first, second, third = 'none selected', fourth] = pickAtLeastOne;

third;
// => 'none selected'

fourth;
// => undefined

مفاهیم مرتبط

object-destructuring rest-and-spread

ویرایش از طریق GitHub این پیوند در پنجره یا زبانه‌ی جدیدی باز می‌شود

تجزیه‌ی آرایه را یاد بگیرید