تست هوش با بازی اعداد شروع شد. از مسابقه جا نمونی 😀

اینجا کلیک کن
بریم برای شروع

متد Object.assign() - آزمون آنلاین جاوااسکریپت

تعداد سوال 12
قیمت رایگانــ
زمانسنج ندارد
رده‌سنی همه سنین
وضعیت فعال
نظرات ندارد

این آزمون در مورد متد Object.assign() در زبان برنامه نویسی جاوااسکریپت هست. اینجا قراره دانش و مهارت تو رو در استفاده از این متد بسنجم.


متد Object.assign(): یک نگاه دقیق

در دنیای جاوااسکریپت، گاهی اوقات نیاز داریم که ویژگی‌های یک یا چند شیء رو به یک شیء دیگه منتقل کنیم. اینجا Object.assign() وارد صحنه میشه!

این متد به ما اجازه میده که تمام ویژگی‌ های قابل شمارش و متعلق به خود یک یا چند شیء منبع (source) رو به یک شیء هدف (target) کپی کنیم. به بیان ساده، انگار داریم ویژگی‌های چند تا شیء رو با هم ترکیب می‌کنیم.

با انجام این کوییز میتونی میزان تسلط خودت رو درباره متد Object.assign() بسنجی و همزمان کلی نکته مفید و اطلاعات جدید یاد بگیری.

متد Object.assign() - آزمون آنلاین جاوااسکریپت


نکات مهمی که باید بدونی

قبل از اینکه وارد جزئیات بشیم، چند تا نکته کلیدی هست که باید حواست بهشون باشه. اول اینکه Object.assign() یک کپی سطحی (shallow copy) ایجاد میکنه.

یعنی اگه یکی از ویژگی‌ها خودش یک شیء باشه، فقط مرجع (reference) اون شیء کپی میشه، نه خود شیء. نکته بعدی اینکه این متد اگه یک کلید تکراری ببینه، کلید بعدی جایگزین قبلی میشه.


const obj1 = { a: 1, b: 2 };
const obj2 = { b: 3, c: 4 };
const combinedObj = Object.assign({}, obj1, obj2);
// combinedObj حالا { a: 1, b: 3, c: 4 } است

مثلا در این کد، مقدار b از obj2، مقدار b از obj1 رو بازنویسی کرد.


این متد کاربردهای زیادی داره. چند تا از مهم‌ترین‌هاشون رو اینجا میگم:

  • ادغام دو یا چند شیء: این ساده‌ترین و شاید رایج‌ترین کاربردش باشه.

  • تنظیم مقادیر پیش‌فرض برای یک شیء: مثلا اگه یک تابع داری که یک شیء به عنوان آرگومان میگیره، میتونی مقادیر پیش‌فرض رو با استفاده از Object.assign() بهش اضافه کنی.

  • کلون کردن (copy) یک شیء: اگه میخوای یک کپی از یک شیء داشته باشی، میتونی اون رو به یک شیء خالی کپی کنی.


نمونه‌هایی از کاربرد در جاوااسکریپت

بیاید چند تا مثال واقعی رو با هم بررسی کنیم تا قشنگ دستت بیاد که چطور کار میکنه.


const defaultOptions = {
  theme: 'dark',
  fontSize: '16px'
};
const userOptions = {
  fontSize: '18px'
};
const finalOptions = Object.assign({}, defaultOptions, userOptions);
// حالا finalOptions: { theme: 'dark', fontSize: '18px' } است

در این مثال، finalOptions مقادیر پیش‌فرض رو از defaultOptions و مقادیر سفارشی رو از userOptions دریافت میکنه و در نهایت مقدار fontSize توسط مقدار کاربر بازنویسی میشه.


const source = { a: 1, b: { c: 2 } };
const target = {};
Object.assign(target, source);
target.b.c = 3;
// حالا source.b.c هم 3 شده چون کپی سطحی بود.

 


سوالات موجود در این آزمون در مورد متد Object.assign() هستن. مثلا ممکنه ازت بپرسم که اگه دو شیء با یک کلید مشترک رو با هم ترکیب کنیم، چه اتفاقی برای مقدار اون کلید میفته؟ یا اینکه بپرسم Object.assign() یک کپی عمیق ایجاد میکنه یا سطحی؟

با شرکت در این آزمون میتونی بفهمی که چقدر روی این متد تسلط داری و دقیقا کجاها نیاز به تمرین بیشتر داری. این کوییز بهت کمک میکنه تا دانش خودت رو تقویت کنی و نکات مهم رو فراموش نکنی.


شاید بپرسی خب مگه با عملگر spread ... نمیشه همین کار رو کرد؟ بله، میشه. ولی Object.assign() میتونه روی شیء هدف اصلی کار کنه و یک شیء جدید برنگردونه. جدول زیر یک مقایسه کوچک بین این دو روش رو نشون میده:

ویژگی

Object.assign()

Spread Syntax

ایجاد شیء جدید

اختیاری

بله

بازنویسی کلید

بله

بله

کپی سطحی

بله

بله

پشتیبانی مرورگر

عالی

عالی (از ES6 به بعد)


آماده‌ای که دانش خودت رو در مورد Object.assign() محک بزنی؟ روی دکمه شروع کلیک کن و وارد این چالش جذاب شو.

تعداد سوال 12
قیمت رایگانــ
زمانسنج ندارد
رده‌سنی همه سنین
وضعیت فعال
نظرات ندارد
معمای امروز 28 مهر 1404 - ترکیب اعداد و حروف - مخصوص ای کیو بالای 100

معمای امروز 28 مهر 1404 - ترکیب اعداد و حروف - مخصوص ای...

طبق معمول هر روز صبح ساعت 8 ، باز هم یک پازل عددی و حروفی سخت داریم. پازل...

معمای پیدا کردن رمز - 27 مهر 404 - 200 تومن داخل این کیفه می تونی رمزش رو پیدا کنی ؟

معمای پیدا کردن رمز - 27 مهر 404 - 200 تومن داخل این...

خوب یک معمای واقعا سخت که حل کردنش کار آسونی نیست . در این معما یک رمز قوی...

تو چند حرکت می تونی رمز این قفل رو پیدا کنی ؟‌ بازی با اعداد - تست هوش

تو چند حرکت می تونی رمز این قفل رو پیدا کنی ؟‌ بازی...

یه بازی ساده براتون آوردم که در عین سادگی نیاز به هوش هم داره. کافیه طبق راهنما عدد...

پازل ترتیب اعداد - روی عدد درست از یک تا آخر به ترتیب کلیک کن

پازل ترتیب اعداد - روی عدد درست از یک تا آخر به ترتیب...

به نظر ساده میاد نه؟‌ ولی انقدرها هم که فکر می کنی ساده نیست . مخصوصا وقتی که...

تمدید پاسپورت بدون کارت پایان خدمت

تمدید پاسپورت بدون کارت پایان خدمت

بسیاری از جوانان و مشمولان نظام وظیفه با موضوع تمدید پاسپورت بدون کارت پایان خدمت درگیرند؛ به‌خصوص کسانی...

عمل بینی در تهران: هزینه، بهترین جراح و نکات مهم انتخاب پزشک

عمل بینی در تهران: هزینه، بهترین جراح و نکات مهم انتخاب پزشک

برای اینکه بتوانید بهترین جراح عمل بینی در تهران را پیدا کنید، ابتدا باید هدف خود از عمل...

تبلیغات پیامکی منطقه‌ای: راهنمای کسب‌ و کارهای محلی کم‌ هزینه

تبلیغات پیامکی منطقه‌ای: راهنمای کسب‌ و کارهای محلی کم‌ هزینه

تبلیغات پیامکی منطقه ای «SMS by Region» یک روش های رایج تبلیغات منطقه ای هدفمند است که برای...

پخش عمده پارچه فاستونی؛ مناسب تولیدی‌ها و فروشگاه‌های پوشاک

پخش عمده پارچه فاستونی؛ مناسب تولیدی‌ها و فروشگاه‌های پوشاک

پیدا کردن یک منبع مطمئن برای پخش عمده پارچه فاستونی همیشه...

مقاومت باکتری نسبت به آنتی بیوتیک چیست و چرا ایجاد می شود؟

مقاومت باکتری نسبت به آنتی بیوتیک چیست و چرا ایجاد می شود؟

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

مراجعه به دکتر آب درمانی چه فوایدی دارد؟

مراجعه به دکتر آب درمانی چه فوایدی دارد؟

دکتر آب درمانی به ما کمک می‌کند تا حرکات کششی که برای بهبود اختلالات مفاصل مناسب هستند را...

طرز تهیه بستنی مگنوم وانیلی بدون ثعلب با خامه و نشاسته-بسیار راحت

طرز تهیه بستنی مگنوم وانیلی بدون ثعلب با خامه و نشاسته-بسیار راحت

طرز تهیه بستنی مگنوم بدون ثعلب و دستگاه بستنی ساز-با خامه و نشاسته طرز تهیه بستنی مگنوم اصل...

کفیر ناری با این پنج روش سلامتی می‌آورد

کفیر ناری با این پنج روش سلامتی می‌آورد

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