✍️ علامت سهنقطه در جای ساخت آرایه، spread نام دارد و عضوهای یک آرایه را داخل آرایه تازه باز میکنه. با این روش میتونیم چند فهرست را به ترتیب کنار هم بذاریم، بدون اینکه به فهرست اولیه چیزی push کنیم. نتیجه یک ظرف تازه است که عضوها را از ورودیها گرفته.
مثلاً [...['صبح'], ...['عصر','شب']] یک آرایه سهعضوی میسازه. اگر سهنقطهها را حذف کنیم، نتیجه دو عضو دارد که هرکدام خودشان آرایهاند. این تفاوت بین کنار هم گذاشتن عضوها و کنار هم گذاشتن خود آرایهها، خطای رایج این الگو است.
در تمرین، ترتیب برچسبهای قبلی باید حفظ بشه و برچسبهای جدید بعد از آنها بیایند. تکرار یک برچسب مجاز است و نباید آن را حذف کنی. خروجی بخش original کمک میکنه ببینیم فهرست قبلی تغییر نکرده. اگر یکی از ورودیها خالی باشه، آرایه دیگر همچنان با همان ترتیب وارد نتیجه میشه؛ اگر هر دو خالی باشند، نتیجه هم خالی است.
فعالیت شما
appendTags(tags, newTags) را کامل کن. هر دو آرایه رشتهاند. {tags: آرایه ترکیبی, original: کپی tags اولیه} برگردان؛ برچسبهای جدید بعد از قبلیها و تکرارها حفظ شوند. ورودیها تغییر نکنند. (['js'],['web']) => {tags:['js','web'],original:['js']}؛ دو آرایه خالی => دو آرایه خالی. تابع کمکی آماده checkAppendTagsUnchanged فقط تغییر نکردن ورودی و، هرجا لازم است، تازه بودن خروجی را بررسی میکند؛ آن را تغییر نده.