هناك طرق قليلة جدًا لإنشاء كائن في JavaScript.
ربما تكون هذه هي الطريقة الأسرع والأسهل لإنشاء كائن في JavaScript. يُطلق على هذا أيضًا اسم مُهيئ الكائن وهو عبارة عن قائمة مفصولة بفواصل مكونة من صفر أو أكثر من أزواج أسماء الخصائص والقيم المرتبطة بالكائن، ومحاطة بأقواس متعرجة ({}).
const newObject = {} // Simply create a new empty object const newObject = { someKey: "someValue", anotherKey: "anotherValue" }
يمكن أن تكون قيم الكائنات إما نوع بيانات بدائي أو كائن آخر.
يمكنك إنشاء كائن باستخدام مُنشئ الكائن المدمج.
إذا كانت القيمة التي تم تمريرها فارغة أو غير محددة أو لم يتم تمرير أي قيمة، فسيتم إنشاء كائن فارغ وإرجاعه.
إذا كانت القيمة كائنًا بالفعل، فإنها تُرجع نفس القيمة.
// below options create and return an empty object const ObjWithNoValue = new Object(); const ObjWithUndefined = new Object(undefined); const ObjWithNull = new Object(null); const newObject = { someKey: "someValue", anotherKey: "anotherValue" } const sameObject = new Object(someObject); sameObject['andAnotherKey'] = "one another value"; sameObject === newObject; // both objects are same.
تسمح لك هذه الطريقة بإنشاء كائن جديد بنموذج أولي محدد. يمكّن هذا الأسلوب الكائن الجديد من وراثة الخصائص والأساليب من النموذج الأولي، مما يسهل السلوك المشابه للوراثة.
const person = { greet: function () { console.log(`Hello ${this.name || 'Guest'}`); } } const driver = Object.create(person); driver.name = 'John'; driver.greet(); // Hello John
قبل ES6، كانت هذه طريقة شائعة لإنشاء كائنات متعددة متشابهة. إن المُنشئ ليس سوى وظيفة وبمساعدة كلمة رئيسية جديدة يمكنك إنشاء كائن.
من الممارسات الجيدة استخدام الأحرف الكبيرة في الحرف الأول من اسم الوظيفة عند إنشاء الكائن باستخدام الكلمة الأساسية "جديدة".
function Person(name, location) { this.name = name; this.location = location; greet() { console.log(`Hello, I am ${this.name || 'Guest'} from ${this.location || 'Earth'}`); } } const alex = new Person('Alex'); alex.greet(); // Hello, I am Alex from Earth const sam = new Person('Sam Anderson', 'Switzerland'); sam.greet(); // Hello, I am Sam Anderson from Switzerland
يساعد النهج الأكثر حداثة في إنشاء كائن تمامًا مثل لغات برمجة OOP الأخرى باستخدام فئة مع وظيفة المنشئ لتهيئة الخصائص والأساليب.
class Person { constructor(name, location) { this.name = name || 'Guest'; this.location = location || 'Earth'; } greet() { console.log(`Hello, I am ${this.name} from ${this.location}`); } } const santa = new Person('Santa'); santa.greet(); // Hello, I am Santa from Earth
مراجع:
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3