
أداة Node.js خفيفة الوزن للدمج العميق أو الضحل لكائنات JavaScript، مأخوذة من طريقة extend الخاصة بـ jQuery.
Object.assignObject.assign في كلا من Node.js والعديد من
المتصفحات (بما أن وحدات NPM للمتصفح أيضًا) قد لا تكون متوافقة بالكامل مع المواصفات.
تحقق من وحدة object.assign
للحصول على مرشح متوافق.هذه الحزمة متاحة على npm باسم: extend
npm install extend
الصيغة: extend ( [deep]، target، object1، [objectN] )
توسيع كائن واحد بكائن واحد أو أكثر، مع إرجاع الكائن المعدَّل.
مثال:
var extend = require('extend');
extend(targetObject, object1, object2);
ضع في اعتبارك أن الكائن الهدف سيتم تعديله، وسيتم إرجاعه من extend().
إذا تم تحديد قيمة منطقية true كأول وسيط، فإن extend يقوم بنسخ عميق (deep copy)، أي نسخ أي كائنات يجدها بشكل تكراري. بخلاف ذلك، ستشارك النسخة الهيكل مع الكائنات الأصلية.
الخصائص غير المعرَّفة لا تُنسخ. ومع ذلك، سيتم نسخ الخصائص الموروثة من النموذج الأولي للكائن.
تحذير: تمرير false كأول وسيط غير مدعوم.
deep Boolean (اختياري)
إذا تم تعيينه، يصبح الدمج تكراريًا (أي نسخ عميق).target Object
الكائن المراد توسيعه.object1 Object
الكائن الذي سيتم دمجه مع الأول.objectN Object (اختياري)
كائنات أخرى لدمجها مع الأول.node-extend مرخص تحت رخصة MIT.
كل الفضل لمؤلفي jQuery في إتقان هذه الأداة الرائعة.
تم نقله إلى Node.js بواسطة Stefan Thomas مع مساهمات من Jonathan Buchanan و Jordan Harband.