خانه » برنامه نویسی » پیوند میان دو Object در JavaScript

پیوند میان دو Object در JavaScript

سلام دوستان عزیز ، پیرو آموزش های کوتاه و کاربردی که چندی پیش شروع کردم این بار به موضوعی در جاوااسکریپت می پردازیم ، امکان دارد که برای شما پیش آمده باشد که نیاز داشته باشید یک Object را بهObject دیگر پیوند بزنید ، چه راه حلی به ذهنتان رسیده ؟ فرض بر این هست که یکی یا هر دو Object های ما در مسیر برنامه می بایست چندین بار مقدار دهی و پیوند زده بشود ، پس عملا روش ایجاد Object برای هر بار استفاده برای ما مقدور نیست …

چند راه حل برای این کار وجود دارد که روش اول استفاده ساده از یک حلقه for می باشد که در زیر کد مربوطه را مشاهده می کنید :

var a = { 'foo': 'bar', 'baz': 'bat' };
var b = { 'foo': 'quux' };
for (prop in a) {
 if (prop in b) { continue; }
 b[prop] = a[prop];
}

در کد بالا ما ابتدا Object با نام a را پیمایش می کنیم و در صورتی که خصوصیت جدید در b وجود نداشته باشد (که توسط شرط در کد تست می شود) خصوصیت a به b افزوده می شود.

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

یکی از این کارهای استفاده از گسترش برای متد Object می باشد ، ما با تعریف یک Prototype برای Object به نام merge  در هر جایی از کد می توانید با فراخوانی این متد از آن بهره ببریم

البته این مورد برای مواردی که احتمال می دهید بیش از یک بار نیاز به استفاده دارید ، بسیاز توصیه میشود…

کد مربوطه :

Object.prototype.merge = (function (ob) {
var o = this;
var i = 0;
for (var z in ob) {
 if (ob.hasOwnProperty(z)) {o[z] = ob[z];
 }
}
return o;
})

و روش استفاده :

var a = {a:1}
var b = {b:2}

var c = a.merge(b); //نتیجه {a:1,b:2}

امیداورم مورد استفادتون قرار گرفته باشه…

موفق و پیروز باشید 😉

Print Friendly, PDF & Email
تگ ها :
پیوند مطلب قبلی
پیوند مطلب بعدی

درباره بهروز پولادرگ

متولد : ۵ مرداد سال ۱۳۶۷ ، حرفه : ادوبی فلش ، برنامه نویسی و طراحی وب ، طراحی گرافیک ، مالتی مدیا ، نرم افزار های تحت وب

ارسال جواب

آدرس رایانامه شما منتشر نخواهد شد.فیلد های اجباری علامت گزاری شده اند *

*

رفتن به بالای صفحه