چگونه می‌توان دو آرایه را در جاوااسکریپت باهم ادغام کرد؟

ترجمه و تالیف : علیرضا معمارزاده
تاریخ انتشار : 29 بهمن 98
خواندن در 1 دقیقه
دسته بندی ها : جاوا اسکریپت

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

به این دو آرایه توجه کنید: [1,2,3] و [4,5,6] که می‌خواهیم این دو را با هم ادغام کرده و به این نتیجه برسیم: [1,2,3,4,5,6]. اولین راه شما احتمالاً استفاده از علامت + و یا روش «.push » می‌باشد، اما هیچ‌یک از این دو روش، نتیجه مناسبی ارائه نمی‌دهند.

چگونه می‌توان دو آرایه را در جاوااسکریپت باهم ادغام کرد؟

در اولین مثال، عملگر +، هر مورد را به‌عنوان یک رشته درنظر می‌گیرد. درنتیجه آخرین آیتم در a و اولین آیتم در b باهم تلفیق می‌شوند و 34 را نشان می‌دهند.

در مثال دوم، b را به‌صورت یک مقدار تک درنظر می‌گیرد و به قسمت انتهای a به همان شکل اضافه می‌کند و به‌صورت آرایه تودرتو نشان داده می‌شوند.

برای ایجاد آرایه‌ای که ما به دنبال آن هستیم، می‌توان از روش.concat()  یا عملگر «...» استفاده کرد.

روش.concat() 

این یک تکنیک قدیمی جداسازی برای ادغام آرایه‌هاست. این روش از آرایه والد استفاده می‌کند (همان آرایه‌ای که ابتدا به آن اشاره می‌شود) و پس ‌از آن هرتعداد آرایه را می‌پذیرد.

چگونه می‌توان دو آرایه را در جاوااسکریپت باهم ادغام کرد؟

عملگر ...

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

چگونه می‌توان دو آرایه را در جاوااسکریپت باهم ادغام کرد؟

من از کدام روش باید استفاده کنم؟

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

من به‌صورت پیش‌فرض از «...» و تنها درصورت لزوم از.concat()  استفاده می‌کنم. عملگر «...» منعطف‌تر است به‌ویژه زمانی که تغییراتی اعمال می‌شوند.

در این آموزش‌نامه، از یک مثال استفاده کردیم، ببینیم که چه اتفاقی می‌افتد اگر بخواهیم آرایه [0,0,0] را به قسمت جلویی دنباله اضافه کنیم؟ اصلاح کد با عملگر «...»  بسیار آسان‎‌تر است.

چگونه می‌توان دو آرایه را در جاوااسکریپت باهم ادغام کرد؟

با استفاده از .concat() ، عبارت قبلی را با یک حرف آرایه باز می‌کنیم و دو آرگومان جاگذاری می‌شوند و آن‌ها را یکی پس از دیگری قرار می‌دهیم.

بااستفاده عملگر «...» ، تغییرات به حداقل می‌رسد، المان‌ها قبل از باز کردن a و b اضافه می‌شوند.

منبع

گردآوری و تالیف علیرضا معمارزاده
آفلاین
user-avatar

Student of Software Engineering, python Developer, i love programming and game

دیدگاه‌ها و پرسش‌ها

برای ارسال نظر لازم است ابتدا وارد سایت شوید
در حال دریافت نظرات از سرور، لطفا منتظر بمانید